Tasuku
A free, fast, private task manager — offline-first PWA, mobile-first, with a CLI for power users, all on one HTTP API.
Tasuku is a task manager built to keep track of things to get done — without the clutter, lock-in, or cost of most todo apps. It is a Progressive Web App with a first-class mobile experience and a command-line client, every client built on one well-designed HTTP API (Product Brief §1).
This site is generated from the codebase knowledge graph and the project’s spec-driven-development artifacts (specs, ADRs, the product brief, and the constitution). Each page lists the artifacts it derives from in its sources front-matter.
At a glance
Section titled “At a glance”- Offline-first. The Cloudflare D1 database is the single source of truth; the PWA stays usable offline via a service-worker shell cache and a Dexie/IndexedDB read cache + outbox. There is no on-device primary database and no sync engine (Product Brief §1.1, constitution §7.14).
- Domain. Users own Lists of Tasks; Tasks have Steps; Lists organize into Groups and can be shared with Members; Views aggregate Tasks across Lists.
- Edge runtime. A Cloudflare Worker (Hono) serves a contract-first HTTP API over D1 (Drizzle); a per-user
SyncInboxDurable Object pushes near-real-time change signals. - Contract-first. Routes are defined with Zod via
@hono/zod-openapi; the generated OpenAPI contract is the single source of truth shared by all clients (ADR-003).
How to navigate
Section titled “How to navigate”- System Architecture — components, layers, and how a write propagates end-to-end.
- Domain Model & Data Schema — entities, rules, and the D1 tables behind them.
- Components & Modules — per-subsystem guides derived from the knowledge graph.
- API Reference — the interactive OpenAPI reference.
- Design Decisions — the accepted ADRs and what each settled.
- Operations & Configuration — runtime config, local CI, and deployment.