KnotCMS
Solo product · alongside IBM · since Jun 2026
Notion becomes a Framer CMS, kept in sync. A live product with paying users — auth, billing, webhooks and support are all mine.
- I have carried a product from idea to invoices, so I understand the cost of the decisions I ask platform teams to make.
- self-service signup, subscription billing, and a sync that recovers itself when Notion rate-limits.
- event-driven Workers, D1 for state, KV for sync cursors, queues for retries, OAuth against Notion and Framer.
- idempotent replay — a webhook can arrive twice, late, or out of order, and the CMS must still converge on one correct tree.
Event-driven · Cloudflare
- External system
- Sync engine
- State / retry
- Product surface
problem → diagnosis → change → outcome
- 7,000 rows
- Workers subrequest fan-out failure
- Queue-based batched invocations
- Reliable synctested to 5,000 rows in ~3 min