This is the backend service for the District Innovation Centre (DIC) platform. It is built using Spring Boot and is designed to support a modern React frontend. The backend manages incubation programs, team members, startups, and events while offering secure authentication and integration with cloud services.
⚠️ Note: : The backend is being actively developed and in development.
The DIC (District Innovation Centre) platform aims to provide a centralized system for managing and showcasing:
- Incubation applications and status tracking
- Team members and organizational info
- Startup listings by sector
- Event management with optional registration
- Admin and user dashboards with role-based access
All of this is exposed through clean, versionable REST APIs for frontend consumption.
-
🔐 Authentication System
- Role-based signup/login (Admin and User)
- Secure JWT-based authentication
- Password encryption via Spring Security
-
🧑💼 Team Member Management
- Add/edit/delete team members
- Upload and store profile pictures (via Cloudinary)
- Support for bio and areas of expertise
-
🚀 Startup Listing
- Create and manage startups
- Store logo, description, sector, and founder info
- Tag-based filtering and categorization
-
📅 Event Management
- Add and update events with images, date, time, venue
- Support for public registration links
-
🏢 Incubation Program
- Application submission by users
- Review and approval by admins
-
🗃️ Data Storage
- Uses Supabase PostgreSQL as the primary database
- Organized model structure with JPA and Hibernate
Layer | Technology |
---|---|
Backend Language | Java 17 |
Framework | Spring Boot |
Build Tool | Maven |
Security | Spring Security + JWT |
Database | Supabase PostgreSQL |
Media Storage | Cloudinary |
API Format | RESTful JSON APIs |
Dev Tools | VS Code, Postman, Git |
Follow these steps to run the Spring Boot backend on your local machine:
- Java 17 or higher
- Maven installed (
mvn -v
) - PostgreSQL access via Supabase (DB URL, user, password)
- Cloudinary account with API credentials
git clone https://github.com/vibek01/DIC_BACKEND.git
cd DIC_BACKEND
### Spring datasource (Supabase PostgreSQL)
spring.datasource.url=jdbc:postgresql://<your-supabase-host>:5432/<your-database>
spring.datasource.username=<your-db-username>
spring.datasource.password=<your-db-password>
### JPA config
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.format_sql=true
### Cloudinary config
cloudinary.cloud_name=<your-cloud-name>
cloudinary.api_key=<your-api-key>
cloudinary.api_secret=<your-api-secret>
### JWT secret (can be anything random & secure)
jwt.secret=<your-secret>
jwt.expirationMs=86400000
./mvnw clean install
./mvnw spring-boot:run
or
mvn spring-boot:run
## App will be available at:
http://localhost:8080