feat(ui,infra): SvelteKit ui scaffold, Makefile, pre-commit, claude hooks
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.
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
## 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 from `ui/build`
|
||||
- `docs/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`):
|
||||
```shell
|
||||
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.
|
||||
Reference in New Issue
Block a user