Progress Arena is a lightweight productivity and gamified progress tracker designed for personal use or friendly competition between two people. It includes a Node/Express backend with PostgreSQL and a React dashboard front-end.
- Email/password authentication with JWT.
- Single or dual mode via invite codes.
- Task creation, completion logging, and streak tracking.
- XP totals, weekly analytics, and leaderboard endpoints.
- Minimal responsive dashboard UI.
- Copy env config:
cp backend/.env.example backend/.env
- Start services:
docker-compose up --build
- Apply schema:
psql postgres://progress:progress@localhost:5432/progress -f backend/db/schema.sql
- Open the app:
- Frontend: http://localhost:5173
- Backend: http://localhost:4000/health
- Use managed PostgreSQL (e.g., RDS, Supabase) and set
DATABASE_URL. - Set
JWT_SECRETto a strong random value. - Configure
CORS_ORIGINfor your deployed frontend domain.