Files
huskies/.huskies/specs/tech/STACK.md
T
2026-04-28 12:03:01 +00:00

1.2 KiB

Tech Stack

Backend

  • Language: Rust
  • Framework: Poem (HTTP + WebSocket + OpenAPI)
  • Database: SQLite via sqlx + rusqlite
  • State: BFT CRDT replicated document backed by SQLite
  • Agents: Claude Code CLI spawned in PTY pseudo-terminals
  • Package manager: cargo

Frontend

  • Language: TypeScript + React
  • Build: Vite
  • Package manager: npm
  • Testing: Vitest (unit), Playwright (e2e)

Deployment

  • Single Rust binary with embedded React frontend (rust-embed)
  • Three modes: standard server, headless build agent (--rendezvous), multi-project gateway (--gateway)
  • Docker container with OrbStack recommended on macOS

Project Layout

server/src/          — Rust backend
frontend/src/        — React frontend
crates/bft-json-crdt/ — CRDT library
.huskies/            — Pipeline config, agent config, specs
script/              — test, build, lint scripts
docker/              — Dockerfile and docker-compose
website/             — Static marketing/docs site

Quality Gates

All enforced by script/test:

  1. Frontend build (npm run build)
  2. Rust formatting (cargo fmt --all --check)
  3. Rust linting (cargo clippy -- -D warnings)
  4. Rust tests (cargo test)
  5. Frontend tests (npm test)