vscarpenter/gsd-task-manager: Cease juggling, begin ending. GSD Task Manager makes it simple to kind your to-dos into what’s pressing and what’s essential, so you’ll be able to lastly get stuff carried out with out burning out. It’s easy, visible, and works totally offline. · GitHub

A privacy-first Eisenhower matrix for deciding what to do, schedule, delegate,
or remove.
Live app: gsd.vinny.dev
Current model: 13.9.2
Current product: the v11 single-matrix shell, offline-first native storage,
optionally available PocketBase sync, and the GSD MCP server.
- A responsive four-quadrant matrix with drag-and-drop motion.
- Quick Capture, full job enhancing, search, keyboard navigation, and optionally available
built-in Smart Views. - Due dates, tags, dependency choice, and circular-dependency prevention.
- Archive, dashboard/overview analytics, sync historical past, settings, and onboarding.
- Local IndexedDB persistence, JSON import/export, offline PWA assist, and
user-controlled replace prompts. - Optional multi-device PocketBase sync with Google, Apple, or GitHub OAuth and
realtime server-sent occasions. - A individually put in MCP server with 19 job, analytics, and diagnostic
instruments, together with validated and dry-run-aware writes. - Light and darkish Inkwell “GSD Editorial” themes with WCAG AA because the
accessibility flooring.
Retired v7/v8 surfaces equivalent to selection-mode batch operations, the Quick
Settings panel, and smart-view pinning shortcuts usually are not a part of the v11 shell.
Local-only mode is the default. Tasks are saved within the browser’s IndexedDB and
the core product doesn’t require a backend. Clearing browser knowledge can erase
native duties, so export backups recurrently.
Cloud sync is explicitly optionally available. When enabled, job knowledge is distributed to the
configured PocketBase server; the hosted configuration makes use of
https://api.vinny.io. Self-hosting directions and the encryption-at-rest
hooks reside beneath docker/. See SECURITY.md for the
exact belief and token-storage posture.
The Eisenhower matrix classifies work by urgency and significance:
- Do First — pressing and essential.
- Schedule — essential, not pressing.
- Delegate — pressing, not essential.
- Eliminate — neither pressing nor essential.
Use the Quick Capture discipline or press n to start out a job. Use Shift+N for the
full composer, / for search, ? for assist, and Option+1 by Option+4
(Alt on non-Mac keyboards) to focus a quadrant. The in-app assist drawer is the
canonical shortcut ledger.
Requirements: Bun 1.3.14, Node.js 22.22.2+ (or 24.15+ or 26+), and a present browser. bun run executes bundle scripts on Node, so exams, lint, and builds run in your put in Node.
Open http://localhost:3000. A contemporary browser profile begins at /about; use
the Open App name to motion to enter the matrix. PocketBase shouldn’t be required
for native job CRUD.
bun run take a look at
bun run take a look at -- --coverage
bun typecheck
bun lint
bun run high quality:form
bun run license:examine
bun audit --audit-level=excessive
bun run construct
bun run take a look at:e2e
Use bun run take a look at, not bun take a look at; the latter invokes Bun’s built-in runner
as a substitute of Vitest. Playwright covers Chromium, Firefox, and WebKit. The optionally available
authenticated PocketBase harness runs with:
bun run take a look at:system:pocketbase
- Next.js 16 App Router static export; the appliance is client-side.
- React 19, TypeScript, Tailwind CSS, and the Violet Frost Inkwell tokens.
- Dexie/IndexedDB for native knowledge and PocketBase for optionally available cloud sync.
- Vitest for unit/integration protection and Playwright for browser protection.
- Bun workspaces, together with
packages/mcp-server/.
Start with ARCHITECTURE.md,
docs/security-trust-boundaries.md, and
the structure selections in docs/adr/.
bun run constructcreates the static export inout/.bun run deployruns the manufacturing deployment script. Production
(gsd.vinny.dev) is the one deploy goal; the event deploy was
retired on 2026-09-11.docker/Dockerfilebuilds the self-hosted Caddy and
PocketBase picture.cloudfront/response-headers-policy.json
and the associated scripts handle manufacturing response headers.
Uploading an artifact shouldn’t be proof that the CDN or a working container serves
it. Verify the deployed URL individually.
Before altering the discharge model or asserting a characteristic:
- Compare the README model with
bundle.json. - Verify each characteristic declare within the present shell, not solely in retained knowledge
fashions or archived ADRs. - Run the canonical checks above and a manufacturing static construct.
- Update the GitHub launch notes,
SECURITY.md, and the trust-boundary map
when the discharge modifications their claims. - Treat supply, exams, construct artifacts, deployment, and reside runtime as
separate proof states.
Read CONTRIBUTING.md earlier than making modifications. Report
vulnerabilities by the non-public course of in SECURITY.md,
not a public situation.

