# web The Tangled web app at [tangled.org](https://tangled.org). It is built with SvelteKit (Svelte 5) and Tailwind 4, and talks to the Tangled services and to users' PDSes over AT Protocol. ## Requirements - Node 24 - pnpm 11 (`corepack enable` picks up the pinned version) ## Getting started ```sh pnpm install pnpm dev # http://127.0.0.1:5173 ``` By default the server expects bobbin on `127.0.0.1:8090` and the API on `127.0.0.1:8080`, which is the [`localinfra`](../localinfra) stack. To work against deployed services instead, put the URLs in `.env`, e.g. as in `wrangler.dev.jsonc`: ```sh BOBBIN_URL=https://next.tangled.org TANGLED_API_URL=https://tangled.org ``` Every server variable is optional and listed in `src/env.ts`; the defaults are in `src/lib/server/config.ts` (and `github/env.ts`, `indexnow.ts` beside it). ## 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` | Production build into `build/` | | `pnpm codegen` | Regenerate lexicon types | End-to-end tests live in [`../e2e`](../e2e/README.md).