A beautiful, snappy to-do app that works on every device. Offline-first. End-to-end encrypted sync. No account needed.
No clutter, no bloat. Just your tasks in a clean, dark interface that feels native on every device.
Add, edit and complete tasks without an internet connection. Everything syncs automatically when you're back online.
Your data is encrypted on your device before it ever leaves. Not even the server can read your tasks.
A progressive web app that installs on your phone, tablet, or desktop. No app store needed.
Pair devices with a QR code. Your tasks stay in sync using conflict-free CRDT technology.
Fully transparent. Inspect the code, self-host it, or contribute. Built in the open for everyone.
Every interaction is instant. Tap to add, swipe to complete, long-press to reorder. Smooth animations throughout — no loading spinners, no waiting.
Run your own sync server with Docker. Your data, your infrastructure, your rules.
# Clone and run
git clone https://github.com/asbjornenge/stuf
cd stuf
cp .env.example .env
docker compose up -d
Single command deploy with Docker Compose. PostgreSQL included.
The server never sees your data. All encryption happens client-side.
Scan a QR code to connect devices. No accounts or passwords.
Let your AI assistant manage your tasks. stuf ships with an MCP server that connects to Claude and other AI tools.
# Add to Claude Code
claude mcp add stuf -- npx stuf-mcp
Works with Claude Code and any MCP-compatible AI assistant.
AI changes sync instantly to all your devices via encrypted sync.
Tasks, checklists, notes, tags, projects, reminders — all from your AI.