A desktop app for tracking crochet projects, patterns, yarn stash, and the perpetual question of "what row am I on again?" Built because the apps that exist either lock features behind a subscription or assume I have signal in the middle of a craft fair.
A SvelteKit + Tauri desktop application — runs locally on Linux / macOS / Windows, no account, no cloud. Started as a side project for a crocheter in my life who kept losing their place mid-pattern and reaching for sticky notes; grew into a small experiment in how far you can push a Tauri app for a domain hobby.
Early. The repo just got reset for a redesign (see commit b900f6a — "chore: restarting with a new design principle"). The previous iteration over-scoped — I tried to model patterns as rich structured data when 90% of usage is "track which row I'm on while looking at a PDF." The redesign starts simpler.
What's running right now:
- SvelteKit frontend + Tailwind v4
- Tauri 2 shell with the desktop window plumbed
- Linting / formatting / Vitest scaffolding
What isn't there yet:
- The actual project / pattern / row-counter UI
- Local SQLite store via Tauri commands
- PDF pattern viewer with row-anchor overlay
The first version tried to be a full pattern editor. The new principle is augment, don't replace: assume the user has a PDF / image of the pattern from somewhere else, and the app's job is to be the companion — row counter, project notes, photos, yarn-substitution log, time tracker — that lives next to the pattern, not the pattern format itself.
That keeps the data model tiny and lets the desktop app be useful in week 1 instead of week 20.
pnpm install
pnpm tauri dev # full desktop app with native window
pnpm dev # web-only mode for fast iteration on the UITauri requires Rust toolchain + a system webview (already on macOS / Windows; install webkit2gtk on Linux).
I considered web. I considered mobile. Desktop won because:
- Offline-first is the default — no service worker dance.
- Long sessions on the couch — laptops live where crochet does.
- Tauri specifically — Electron is fine but ships a 70MB Chromium copy I don't need; Tauri uses the system webview and the binary is ~3MB. For a hobby app shipped to one user, that matters.