Skip to content

Development Setup

The easiest way to start developing is with Docker:

Terminal window
git clone https://github.com/UniDash-Linux/UniDash.git
cd UniDash
docker compose -f docker-compose.dev.yml up

This starts PostgreSQL and Redis. API and Web services are commented out until their Dockerfiles are created.

ServicePortDescription
PostgreSQL5432Database
Redis6379Cache and sessions
api/db8000Database API (future)
api/sso8001Authentication API (future)
api/unidash8002Main API (future)
api/admin8003Admin API (future)
api/backup8004Backup API (future)
web3000Astro frontend (future)
docs4321Starlight documentation
Terminal window
# Python tests
docker compose -f docker-compose.dev.yml exec api pytest --cov
# Frontend tests
docker compose -f docker-compose.dev.yml exec web npm run test

Pre-commit hooks run automatically on commit. To run manually:

Terminal window
docker compose -f docker-compose.dev.yml exec api ruff check .
docker compose -f docker-compose.dev.yml exec web npm run lint