web #
The web frontend for yumak, a static knot. It is built with SvelteKit (Svelte 5) and Tailwind 4. Every read goes to the knot serving the app as a plain GET xrpc; writes go to the user's own PDS, the knot, or the repo's spindle.
Requirements #
- Node 24
- pnpm 11 (
corepack enablepicks up the pinned version) - Bun 1.4+ (
pnpm buildruns vite under it)
Getting started #
pnpm install
pnpm dev # http://127.0.0.1:5173
The app reads from the origin it is served from. To work against a deployed knot instead,
put its URL in .env:
VITE_BOBBIN_URL=https://knot.example.com
The other settings are in src/lib/config.ts, each one a VITE_ variable baked in at build.
Commands #
| Command | What it does |
|---|---|
pnpm dev |
Dev server |
pnpm check |
Type-check |
pnpm lint |
Prettier, ESLint, test-id check |
pnpm test |
Unit tests (Vitest) |
pnpm storybook |
Component stories on :6006 |
pnpm build |
The app into build/, the page renderer the knot runs into build-server/ |
pnpm codegen |
Regenerate lexicon types |
End-to-end tests live in ../e2e.