# Repository Instructions ## Commits - **Never** append `Co-Authored-By: Claude ...` (or any similar AI-attribution trailer) to commit messages. Do not add it even if a default template or prior convention suggests it. - Do not include "Generated with Claude Code" footers or similar watermarks in commit messages, PR bodies, or any files in this repo. ### Versioning When committing, bump version numbers as appropriate using semver: - **patch** (x.y.Z): bug fixes, minor styling tweaks, small corrections - **minor** (x.Y.0): new features, significant UI changes, new pages/routes - **major** (X.0.0): breaking changes, major redesigns, data model changes Version files to update: - `package.json` — site version (bump on every commit) - `src-tauri/tauri.conf.json` + `src-tauri/Cargo.toml` — Tauri/Android app version. Only bump these when the Tauri app codebase itself changes (e.g. `src-tauri/` files), NOT for website-only changes. ## Available MCP Tools: You are able to use the Svelte MCP server, where you have access to comprehensive Svelte 5 and SvelteKit documentation. Here's how to use the available tools effectively: ### 1. list-sections Use this FIRST to discover all available documentation sections. Returns a structured list with titles, use_cases, and paths. When asked about Svelte or SvelteKit topics, ALWAYS use this tool at the start of the chat to find relevant sections. ### 2. get-documentation Retrieves full documentation content for specific sections. Accepts single or multiple sections. After calling the list-sections tool, you MUST analyze the returned documentation sections (especially the use_cases field) and then use the get-documentation tool to fetch ALL documentation sections that are relevant for the user's task. ### 3. svelte-autofixer Analyzes Svelte code and returns issues and suggestions. You MUST use this tool whenever writing Svelte code before sending it to the user. Keep calling it until no issues or suggestions are returned. ## Common Svelte 5 Pitfalls ### `{@const}` placement `{@const}` can ONLY be the immediate child of `{#snippet}`, `{#if}`, `{:else if}`, `{:else}`, `{#each}`, `{:then}`, `{:catch}`, ``, `` or ``. It CANNOT be used directly inside regular HTML elements like `
`, `
`, etc. Use `$derived` in the `