Skip to content

Repository files navigation

WareBox

Interactive software engineering training — company-simulated labs, production dashboards, Monaco workspace, and an AI mentor.

Stack

  • 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

Quick start (local, no Docker)

API

cd apps/api
py -m venv .venv
# Windows
.\.venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reload --port 8000

API docs: http://localhost:8000/docs

Seed accounts:

Role Email Password
Admin admin@warebox.dev WareBoxAdmin123!
Learner learner@warebox.dev WareBoxLearner123!

Web

cd apps/web
npm install
npm run dev

Open http://localhost:3000 — set NEXT_PUBLIC_API_URL=http://localhost:8000 if needed.

Docker Compose (optional)

cp .env.example .env
docker compose up --build

Monorepo layout

apps/web          Next.js UI
apps/api          FastAPI clean architecture
labs/             Lab definitions + compose stubs
packages/shared   Shared constants
infra/            Prometheus, K8s/Terraform stubs

MVP features

  • 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)

Tests

cd apps/api && pytest -q
cd apps/web && npm run test

License

Proprietary — WareBox MVP.

About

WareBox — Hack The Box for software engineers. Interactive labs that simulate real company work: build, debug, deploy, and operate production systems.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages