Get up and running with the project in under 10 minutes!
- Python 3.12+
- Node.js 20+
- Docker & Docker Compose
- Git
# Clone the repository
git clone <repo-url>
cd project-name
# Create a new branch for your work
git checkout -b feature/your-feature-name# Backend environment
cd backend
cp .env.example .env
# Edit .env with your settings
# Frontend environment
cd ../frontend
cp .env.example .env.local
# Edit .env.local with your settings# From project root
docker-compose up
# Services will be available at:
# - Frontend: http://localhost:3000
# - Backend API: http://localhost:8000
# - API Docs: http://localhost:8000/api/docs
# - PostgreSQL: localhost:5432
# - Redis: localhost:6379# Install pre-commit
uv tool install pre-commit
# Install git hooks
pre-commit install
# Test hooks are working
pre-commit run --all-filesSee Pre-commit Guide for detailed information.
cd backend
# Install uv (Python package manager)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Install dependencies
uv sync
# Run migrations
uv run python manage.py migrate
# Create superuser (optional)
uv run python manage.py createsuperuser
# Start server
uv run python manage.py runservercd frontend
# Install dependencies
npm install
# Start development server
npm run dev# Backend tests
cd backend && uv run pytest
# Frontend tests
cd frontend && npm run test:e2e
# Run all tests
./scripts/run-tests.sh# Backend
cd backend
uv run ruff check . # Linting
uv run mypy . # Type checking
# Frontend
cd frontend
npm run lint # ESLint
npm run type-check # TypeScript
npm run format # Prettier# Create new migration
cd backend
uv run python manage.py makemigrations
# Apply migrations
uv run python manage.py migrate
# Reset database
uv run python manage.py flush# Backend
cd backend
uv add package-name
# Frontend
cd frontend
npm install package-name.
├── backend/
│ ├── apps/ # Django apps
│ ├── config/ # Settings & URLs
│ └── tests/ # Tests
├── frontend/
│ ├── src/
│ │ ├── app/ # Next.js pages
│ │ ├── components/ # React components
│ │ └── lib/ # Utilities
│ └── tests/ # E2E tests
└── docs/ # Documentation
# Kill process on port 8000
lsof -ti:8000 | xargs kill -9
# Kill process on port 3000
lsof -ti:3000 | xargs kill -9# Clean rebuild
docker-compose down -v
docker-compose build --no-cache
docker-compose up# Check if PostgreSQL is running
docker-compose ps postgres
# Check logs
docker-compose logs postgres- Read the Architecture Overview
- Check out existing API Documentation
- Review the Contributing Guide
- Start working on your feature!