This project is a social-impact full-stack web application designed to help people raise local area issues and engage with their community in a safe and transparent way. The platform allows users to report problems anonymously to the appropriate municipal authorities, while also providing a public social space where users can openly share content and interact with others.
Standard full-stack layout (not microservices):
backend/api/— Spring Boot backend APIfrontend/web/— Next.js frontendinfra/— local infra (optional; Postgres via Docker Compose)docs/— documentation
See docs/DEPENDENCIES.md for full dependency details.
This project runs as two servers:
- Backend (Spring Boot):
http://localhost:8081 - Frontend (Next.js):
http://localhost:3001
If you're using local Postgres via Docker:
cd "CivicPulse "
docker compose -f infra/docker-compose.yml up -dNotes:
- Postgres is exposed on host port 5433 (to avoid conflicts if you already have Postgres on 5432).
One-command option (starts Postgres + applies schema/seed + runs backend):
cd "CivicPulse "
./scripts/dev-backend.shGuide: docs/plan/phase-00-setup/00-02-one-command-backend.md
cd "CivicPulse /backend/api"
DB_PORT=5433 ./mvnw spring-boot:runVerify backend:
curl http://localhost:8081/actuator/healthcd "CivicPulse /frontend/web"
npm install
npm run dev -- -p 3001Open:
- Stop backend/frontend: press
Ctrl + Cin their terminals. - Stop Postgres:
cd "CivicPulse "
./scripts/stop-backend.shOr manually:
cd "CivicPulse "
docker compose -f infra/docker-compose.yml down