ui/: SvelteKit 2 + Svelte 5 + Tailwind 4 + shadcn-svelte (luma, lucide) on bun with ultracite; adapter-static with SPA fallback; theme tokens taken from msos. Dockerfile gains a bun stage that builds ui/build. Makefile and pre-commit cover ruff, ty, ultracite and svelte-check; .claude settings run the matching fixer after edits. docs/PRODUCT.md captures product truth for the UI work. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
955 B
955 B
Code Principles
- Simplicity: Write simple, straightforward code
- Readability: Make code easy to understand
- Maintainability: Write code that's easy to update
- Less Code = Less Debt: Minimize code footprint
- NEVER write comments - code should be self-documenting
Layout
src/beaver_gateway- python, unopinionated primitives (no vault paths, no agent names)ui- SvelteKit SPA (admin + Obsidian panel), served by the gateway fromui/builddocs/MISSION.md,docs/PRD.md,docs/PLAN.md,docs/PROGRESS.md- keep PROGRESS.md current
Checking commands
After writing code, always run (or make check):
ruff format # python formatter
ruff check --fix # python linter
ty check # python type-checker
cd ui && bun fix # frontend linter+formatter (ultracite)
cd ui && bun check # svelte-check
Dependencies: uv add / cd ui && bun add, never edit lock files by hand.