Start with the app everybody knows
Every engineer has built a to-do list. That is precisely why it is the right example.
Nobody needs a lesson in what a task, checkbox or shared list is. We can spend our attention on the decisions that distinguish a disposable demo from a product people choose to organise their work around: instant interaction, durable history, collaboration, offline use, permissions, undo, schema evolution and recovery.
Products such as Linear, Notion and Jira make the point. “To-do list” is not a synonym for “trivial.” There is such a thing as a much better task application, and making one is a serious product and engineering challenge.
The Nomos learning path
Section titled “The Nomos learning path”We build one application and keep making it more capable:
- create a list and add a task;
- keep one stable identity and history for every task;
- share a list or an individual task with another participant;
- let both participants work offline and converge later;
- evolve the task schema without deleting version-one history;
- restore custody, replay the accepted offers and recover the same world.
The interface remains immediately legible while the underlying guarantees become progressively more serious. That makes framework trade-offs visible instead of hiding them behind an unfamiliar business domain.
Start with One last to-do list.
Try the published local loop
Section titled “Try the published local loop”You need Node.js 24 or later. You do not need an account, hosted workspace or Nomos source checkout.
npx --yes create-githolon@latest my-nomos-appcd my-nomos-appnpm installnpm run compilenpm run proofcompile emits readable law, generated TypeScript and Dart applications, and a generated business proof.
proof starts the real local offer kernel, performs the generated journey, discards resident state,
restores custody, verifies the chain and reads the same business world back.
What good DX means here
Section titled “What good DX means here”The application author describes business nouns, verbs, reads and rules. Nomos generates the application surface and owns identity, admission, persistence, projection, sync, replay and recovery underneath it.
The goal is not merely less code. It is a small amount of code that still supports the product qualities people notice: immediate local interaction, reliable collaboration, inspectable history and the freedom to make tomorrow’s application better without invalidating yesterday’s work.