cameronapak/dotflowy

Dotflowy is the OSS Workflowy alternative. Free up your mind. Get your thoughts and tasks out. Organize them later, or don't. Agent-native.

TypeScript

79

708 commits

updated Sep 16, 2026

See the code

README

Dotflowy

Room to think — get everything out of your head, shape it when you're ready, and find it when it matters.
An open-source Workflowy alternative, extensible with plugins like Obsidian. Agent-native via MCP.

dotflowy.com


Dotflowy is an outliner: one big tree of bullets you can zoom, filter, and rearrange without friction. It's local-first at heart — a static SPA built with TanStack Start and TanStack DB — with a Cloudflare backend that syncs your outline live across devices via a per-user Durable Object, behind Better Auth accounts.

Highlights

  • Everything is a bullet — nest, collapse, zoom into any node as a temporary root, drag the dot to reorder and reparent in one drop
  • Three node kinds — bullet, task (checkbox + a "show completed" toggle), and paragraph (reads as prose)
  • Markdown-style rich textinline code, bold / italic / strikethrough / underline, highlights, links that fold to a clean label, and ||spoilers|| hidden from humans until the caret enters and redacted from AI agents
  • Organize as you type#tags filter in place (right-click to color), [[node links]] with backlinks, mirrors that window one node into many places, daily notes with a Today button and [[YYYY-MM-DD]] date chips
  • Keyboard-first — a / command palette, a Cmd/Ctrl+K command center, whole-node selection, quick-add capture, undo / redo (all shortcuts)
  • In and out freely — multi-line paste lands as real nodes, copy gives markdown back, OPML import / export speaks the Workflowy dialect
  • Agent-native — an OAuth-gated MCP server lets AI agents read and edit the outline, with edits syncing live into open editors

Not built yet: sharing.

Run it locally

bun install
bun run setup      # once: secrets + local database schema
bun run dev        # vite (:3000) + worker (:8787) in one command
bun run seed:user  # optional: a ready-made dev account to sign in with

Open http://localhost:3000 and sign in as dev@dotflowy.local / dotflowy-dev. Everything runs offline — no Cloudflare account needed until you deploy. CONTRIBUTING.md has the full setup guide.

Documentation

DocWhat's in it
ArchitectureThe data model, persistence + sync design, the plugin system, the stack, and the project layout
DeployingSelf-hosting on Cloudflare Workers, auth + signup configuration
Agents (MCP)Connecting AI agents to your outline over the Model Context Protocol
Keyboard shortcutsThe full key reference
CONTRIBUTING.mdSetup, the dev loops, the pre-PR check matrix, repo conventions
AGENTS.mdAlways-on identity, guardrails, and pointers for coding agents
docs/adr/One decision record per load-bearing choice
CHANGELOG.mdWhat's new, release by release

License

Copyright © FAITH TOOLS SOFTWARE SOLUTIONS, LLC. Released under the O'Saasy License. Source is available for learning, modification, and self-hosting; offering a competing hosted SaaS product is reserved to the copyright holder.

cloudflare-workers
effect
effect-ts
mcp
outliner
todolist
workflowy
xstate

Contributors

cameronapak

677 commits

cursoragent

17 commits

dpshde

12 commits

claude

1 commits

cameronapak/dotflowy

Dotflowy is the OSS Workflowy alternative. Free up your mind. Get your thoughts and tasks out. Organize them later, or don't. Agent-native.

TypeScript

79

708 commits

updated Sep 16, 2026

See the code

README

Dotflowy

Room to think — get everything out of your head, shape it when you're ready, and find it when it matters.
An open-source Workflowy alternative, extensible with plugins like Obsidian. Agent-native via MCP.

dotflowy.com


Dotflowy is an outliner: one big tree of bullets you can zoom, filter, and rearrange without friction. It's local-first at heart — a static SPA built with TanStack Start and TanStack DB — with a Cloudflare backend that syncs your outline live across devices via a per-user Durable Object, behind Better Auth accounts.

Highlights

  • Everything is a bullet — nest, collapse, zoom into any node as a temporary root, drag the dot to reorder and reparent in one drop
  • Three node kinds — bullet, task (checkbox + a "show completed" toggle), and paragraph (reads as prose)
  • Markdown-style rich textinline code, bold / italic / strikethrough / underline, highlights, links that fold to a clean label, and ||spoilers|| hidden from humans until the caret enters and redacted from AI agents
  • Organize as you type#tags filter in place (right-click to color), [[node links]] with backlinks, mirrors that window one node into many places, daily notes with a Today button and [[YYYY-MM-DD]] date chips
  • Keyboard-first — a / command palette, a Cmd/Ctrl+K command center, whole-node selection, quick-add capture, undo / redo (all shortcuts)
  • In and out freely — multi-line paste lands as real nodes, copy gives markdown back, OPML import / export speaks the Workflowy dialect
  • Agent-native — an OAuth-gated MCP server lets AI agents read and edit the outline, with edits syncing live into open editors

Not built yet: sharing.

Run it locally

bun install
bun run setup      # once: secrets + local database schema
bun run dev        # vite (:3000) + worker (:8787) in one command
bun run seed:user  # optional: a ready-made dev account to sign in with

Open http://localhost:3000 and sign in as dev@dotflowy.local / dotflowy-dev. Everything runs offline — no Cloudflare account needed until you deploy. CONTRIBUTING.md has the full setup guide.

Documentation

DocWhat's in it
ArchitectureThe data model, persistence + sync design, the plugin system, the stack, and the project layout
DeployingSelf-hosting on Cloudflare Workers, auth + signup configuration
Agents (MCP)Connecting AI agents to your outline over the Model Context Protocol
Keyboard shortcutsThe full key reference
CONTRIBUTING.mdSetup, the dev loops, the pre-PR check matrix, repo conventions
AGENTS.mdAlways-on identity, guardrails, and pointers for coding agents
docs/adr/One decision record per load-bearing choice
CHANGELOG.mdWhat's new, release by release

License

Copyright © FAITH TOOLS SOFTWARE SOLUTIONS, LLC. Released under the O'Saasy License. Source is available for learning, modification, and self-hosting; offering a competing hosted SaaS product is reserved to the copyright holder.

cloudflare-workers
effect
effect-ts
mcp
outliner
todolist
workflowy
xstate

Contributors

cameronapak

677 commits

cursoragent

17 commits

dpshde

12 commits

claude

1 commits

Languages

TypeScript

98.2%

CSS

1.7%