Interactive software engineering training — company-simulated labs, production dashboards, Monaco workspace, and an AI mentor.
- Frontend: Next.js 15 (App Router), TypeScript, Tailwind, Framer Motion, Monaco, Zustand
- Backend: FastAPI, SQLAlchemy, JWT/RBAC, Redis (with in-memory fallback), OpenAPI
- Runtime: Simulated lab environment by default (
LAB_RUNTIME_MODE=simulated); Docker Compose adapter available - Data: SQLite locally; PostgreSQL via Docker Compose
cd apps/api
py -m venv .venv
# Windows
.\.venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reload --port 8000API docs: http://localhost:8000/docs
Seed accounts:
| Role | Password | |
|---|---|---|
| Admin | admin@warebox.dev | WareBoxAdmin123! |
| Learner | learner@warebox.dev | WareBoxLearner123! |
cd apps/web
npm install
npm run devOpen http://localhost:3000 — set NEXT_PUBLIC_API_URL=http://localhost:8000 if needed.
cp .env.example .env
docker compose up --buildapps/web Next.js UI
apps/api FastAPI clean architecture
labs/ Lab definitions + compose stubs
packages/shared Shared constants
infra/ Prometheus, K8s/Terraform stubs
- Auth (register/login/refresh/JWT + RBAC)
- Skill tracks, companies, 6 seeded labs
- Lab workspace: Monaco, file tree, terminal WebSocket, production dashboard
- XP, streaks, achievements, leaderboard
- AI mentor (mock / OpenAI / Anthropic)
- Admin dashboard
- Feature flags for billing / multiplayer / recruiter (off by default)
cd apps/api && pytest -q
cd apps/web && npm run testProprietary — WareBox MVP.