Prerequisites
Before you begin, ensure you have the following installed:- Docker (version 20.10 or higher) and Docker Compose (v2.0+)
- Git for cloning the repository
- Node.js 18+ and npm for the frontend
- Java 21 for local backend development (optional)
- Auth0 account for authentication setup
If you’re just getting started, Docker and Docker Compose are all you need to run the full stack.
Quick Start
Configure Environment Variables
Create a
.env file in the root directory with the required environment variables:.env
Configure Auth0
Set up your Auth0 application:
- Create a new Auth0 application (Regular Web Application)
- Configure the following settings:
- Allowed Callback URLs:
http://localhost:3000/api/auth/callback - Allowed Logout URLs:
http://localhost:3000 - Allowed Web Origins:
http://localhost:3000
- Allowed Callback URLs:
- Create an API in Auth0 with the identifier matching your
AUTH0_AUDIENCE - Update your
.envfile with the Auth0 credentials
Start the Backend Services
Use Docker Compose to start the PostgreSQL database and backend:This will start:You should see all services in a “running” state.
- PostgreSQL with PostGIS extension on port
5432 - Spring Boot backend on port
8080 - pgAdmin on port
5050(optional database management)
Set Up Frontend Environment
Navigate to the frontend directory and create a Create
.env.local file:.env.local with the following variables:.env.local
Start the Frontend
Run the Next.js development server:The frontend will start on
http://localhost:3000Verify Your Setup
Backend API
Check the backend health endpoint:
API Documentation
Access Swagger UI at:
Database Admin
Access pgAdmin at:Login:
admin@hub.com / adminFrontend
Access the application at:
Common Issues
Database connection failed
Database connection failed
Make sure PostgreSQL is running and the credentials in your Check that the database is healthy:
.env file match:Backend fails to start
Backend fails to start
Check the backend logs for errors:Common issues:
- Auth0 configuration is invalid
- Database connection failed
- Missing environment variables
Auth0 authentication fails
Auth0 authentication fails
Verify that:
- Your Auth0 callback URLs are configured correctly
- The
AUTH0_SECRETis set in.env.local - The
AUTH0_AUDIENCEmatches between backend and frontend - Your Auth0 application type is “Regular Web Application”
Frontend can't connect to backend
Frontend can't connect to backend
Ensure that:
- The backend is running on
http://localhost:8080 NEXT_PUBLIC_API_URLin.env.localis set tohttp://localhost:8080- CORS is properly configured in the backend
Useful Commands
Quick reference for common development tasks:Next Steps
Installation Guide
Learn about detailed installation options and local development setup
API Reference
Explore the available API endpoints and authentication
Architecture
Understand the platform architecture and technology stack
Development Guide
Learn about the development workflow and best practices