Engineering Productivity
Developer Experience
Zero-friction development with one-command setup, live reload, and integrated debugging for maximum developer productivity.
< 5 min
Setup Time
< 200ms
Hot Reload
4 min
CI Feedback
9.2/10
Dev Satisfaction
One-Command Setup
Complete development environment in under 5 minutes with automatic dependency management.
# Quick Start git clone https://github.com/justkalm/justkalm.git cd justkalm make dev # That's it! 🚀 # Services available at: # - Frontend: http://localhost:3000 # - API: http://localhost:8000 # - Docs: http://localhost:8000/docs # - DB Admin: http://localhost:8080
Makefile Commands
# Makefile .PHONY: dev setup test lint clean dev: setup @echo "Starting development environment..." docker compose up -d postgres redis @sleep 3 docker compose up -d --build setup: @echo "Installing dependencies..." pnpm install cd backend && pip install -e ".[dev]" @make migrate test: @echo "Running tests..." cd backend && pytest -v --cov=src pnpm test lint: @echo "Running linters..." cd backend && ruff check . && mypy . pnpm lint migrate: cd backend && alembic upgrade head seed: cd backend && python -m scripts.seed_data clean: docker compose down -v rm -rf node_modules .venv __pycache__
Docker Compose Stack
# docker-compose.yml
version: "3.9"
services:
frontend:
build:
context: ./frontend/console
dockerfile: Dockerfile.dev
volumes:
- ./frontend/console:/app
- /app/node_modules
ports:
- "3000:3000"
environment:
- NEXT_PUBLIC_API_URL=http://localhost:8000
depends_on:
- api
api:
build:
context: ./backend
dockerfile: Dockerfile.dev
volumes:
- ./backend:/app
ports:
- "8000:8000"
environment:
- DATABASE_URL=postgresql://dev:dev@postgres:5432/justkalm
- REDIS_URL=redis://redis:6379
- ENVIRONMENT=development
- DEBUG=true
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_started
postgres:
image: postgres:16-alpine
volumes:
- postgres_data:/var/lib/postgresql/data
ports:
- "5432:5432"
environment:
- POSTGRES_USER=dev
- POSTGRES_PASSWORD=dev
- POSTGRES_DB=justkalm
healthcheck:
test: ["CMD-SHELL", "pg_isready -U dev"]
interval: 5s
timeout: 5s
retries: 5
redis:
image: redis:7-alpine
ports:
- "6379:6379"
volumes:
- redis_data:/data
adminer:
image: adminer
ports:
- "8080:8080"
depends_on:
- postgres
volumes:
postgres_data:
redis_data:Local Service Architecture
Frontend
:3000
Next.js 16
API Server
:8000
FastAPI
PostgreSQL
:5432
v16 Alpine
Redis
:6379
v7 Alpine
Adminer
:8080
DB Admin
MailHog
:8025
Email Testing
MinIO
:9000
S3 Compatible
Jaeger
:16686
Tracing UI
Start Building Today
From clone to first commit in under 5 minutes.
One-Command Setup200ms Hot Reload9.2/10 Dev Satisfaction