Disk Is the Contract: Inside Threlmark’s Local-First Architecture

📊 Full opportunity report: Disk Is the Contract: Inside Threlmark’s Local-First Architecture on ThorstenMeyerAI.com — validation score, market gap, and execution plan.

TL;DR

Threlmark’s local-first architecture makes disk the ultimate data contract, avoiding databases and simplifying synchronization. This approach improves resilience, portability, and transparency in project management tools.

Threlmark has adopted a novel architecture that treats local disk storage as the definitive source of truth for data, eliminating the need for traditional databases or cloud servers. This approach is detailed in the original analysis. This approach enhances offline usability, simplifies synchronization, and improves data portability across tools, making the system more resilient and transparent.

Threlmark’s design centers on storing each data item in individual files within a structured directory hierarchy, with atomic file operations ensuring data integrity. This setup allows for seamless synchronization, even in offline scenarios, and enables external tools to read or modify data directly via the filesystem without proprietary interfaces. For more on this, see Disk Is the Contract: Inside Threlmark’s Local-First Architecture.

The system employs strategies like atomic writes—writing to temporary files before renaming—and tolerant merging to prevent data corruption amid concurrent edits. Files are organized into explicit directory structures that act as a contract, providing clarity and facilitating interoperability. This design reduces complexity associated with centralized databases and offers a more transparent, flexible workflow.

Disk is the contract: inside Threlmark’s architecture — ThorstenMeyerAI.com
ThorstenMeyerAI.com
Threlmark · Technical Deep-Dive
Threlmark · architecture

Disk is the contract: inside a local-first roadmap hub

A Next.js app on top of plain JSON files — no database, no cloud, no accounts. The key decision: the on-disk layout IS the API. Everything else cascades from taking that seriously.

Next.js · TypeScript · JSON-on-disk · MIT · part 2 of the Threlmark series
01The core decision

There is no server-of-record — the files are the record

The UI and any external tool reach the same files through the same discipline. The data root defaults to ~/.threlmark — home-based, because it’s a shared hub every one of your apps points at.

~/.threlmark/ ├─ threlmark.json # manifest ├─ links.json # dependency graph ├─ projects// │ ├─ project.json # meta + wipLimits │ ├─ board.json # lane ordering │ ├─ items/.json # ONE card per file ← source of truth │ ├─ suggestions/ # the Inbox (drop-zone) │ ├─ handoffs/ # recorded agent handoffs │ ├─ reports/ # agent report drop-zone │ └─ ROADMAP.md # human-readable mirror ├─ shared/items/ # cards many projects ref └─ archive/ # archived, still readable

Inspectable

Every artifact is a file you can cat, diff, grep, commit.

Portable · no lock-in

Back up with cp, sync with Dropbox / git, migrate trivially.

Interoperable

Any tool in any language joins by reading / writing files.

Restartable

No in-memory state to lose — stateless over the files.

02Making files safe
Samsung T7 Portable SSD, 1TB External Solid State Drive, Speeds Up to 1,050MB/s, USB 3.2 Gen 2, Reliable Storage for Gaming, Students, Professionals, MU-PC1T0T/AM, Gray

Samsung T7 Portable SSD, 1TB External Solid State Drive, Speeds Up to 1,050MB/s, USB 3.2 Gen 2, Reliable Storage for Gaming, Students, Professionals, MU-PC1T0T/AM, Gray

MADE FOR THE MAKERS: Create; Explore; Store; The T7 Portable SSD delivers fast speeds and durable features to…

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Two disciplined patterns instead of a database

“Just use files” is easy to get wrong. These two patterns — ported from a battle-tested sibling app — are what make file-based state sound rather than reckless.

Pattern 1

Atomic writes

Write to a temp file in the same dir, then rename() over the target. Rename is atomic on one filesystem — a crash mid-write leaves the complete old file or the complete new one, never a half.

write .tmp-pid-rand fsync rename() over target
Pattern 2 · one file per item

The board heals itself

A single roadmap.json array races when two tools write at once. One file per card makes writes collision-free. Lane order lives in board.json and reconciles on read.

The payoff: an external tool never touches board.json. It writes an item file — the board fixes itself on Threlmark’s next read. Unknown keys are preserved, so the contract is forward-compatible.
03Derived, never stored
Free Fling File Transfer Software for Windows [PC Download]

Free Fling File Transfer Software for Windows [PC Download]

Intuitive interface of a conventional FTP client

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

The numbers can’t drift from the files

Anything computable from item state is computed — so the displayed numbers can never disagree with the underlying JSON. Priority is the clearest example: it’s calculated on read, never persisted.

priority — computed on read

Impact weighted heaviest; effort the only axis that subtracts. Reused verbatim from the original tool, so imported cards rank identically.

priority = max(0, round(impact·3 + evidence·2 + fit·2effort·1.5))
a 5 / 5 / 5 / 4 card 29
work-item age
now − lane-entry time. Past threshold (dev 7d, ranked 21d, idea 60d) → stale.
cycle time
first DevelopmentDone. Derived from append-only transitions[].
throughput
items reaching Done per ISO week, 8-week window.
WIP
count per lane; over the cap shows 3 / 2 in red.
04The closed agent loop · press play
Amazon

offline data storage device

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

A handoff is a first-class flow event

The genuinely 2026-shaped part: most building is done by AI agents, so Threlmark closes the loop. Watch a card go from ranked to Done without anyone dragging it.

Handoff → report → self-move

The brief carries a reporting protocol. The agent reports through REST or the filesystem — and a done report moves the card itself.

Ranked
Add price-drop alertsscore 31 · ready
Development
Handed off 🤖
Done
▶ preferred — REST
POST /api/projects/:id/
items/:itemId/report

Direct call. Applied immediately.

▶ fallback — filesystem
drop reports/.json
→ ingested on read

Robust even if the server’s down at finish time.

🤖 claude done: price-drop alerts shipped · typecheck + lint + build passed — card moved to Done
05Portfolio score & deployment
Json Genie Premium: JSON Editor, Viewer & Formatter

Json Genie Premium: JSON Editor, Viewer & Formatter

Open, view, and edit JSON and JSONC files with a fast tree-based interface

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

A small formula, and an honest hosting caveat

Because items are globally addressable (/), the Portfolio ranks everything together by a status-weighted score — finishing beats starting, blockers get a boost.

Portfolio ranking — status-weighted

In-flight work floats to the top; bottlenecks cost the most, so blockers get nudged up.

score = priority · statusWeight (+ 0.1 · blockedCount · priority)
1.3
development
1.0
ranked
0.85
idea
0.15
done
Path 1

Static read-only demo

Seeded data, writes to localStorage. Try-before-you-clone.

Path 2

Personal Node instance

Password-gated, persistent backed-up THRELMARK_DATA_DIR.

Path 3

Multi-tenant SaaS

Add accounts + per-tenant isolation. A separate build.

The elegant part: the store interface src/lib/*/store.ts is the natural seam — the same boundary that keeps the local tool simple is the one you’d extend for multi-tenancy. The architecture doesn’t fight that future; it just doesn’t pay for it until you need it.
ThorstenMeyerAI.com
Threlmark · open source (MIT) · github.com/MeyerThorsten/threlmark · part 2 of a series · file layout, formula, weights & agent-loop channels are Threlmark’s actual mechanics.

Why Making Disk the Single Source of Truth Matters

This architecture shifts the paradigm from centralized databases to decentralized, file-based data management, offering increased resilience, portability, and transparency. It allows users to edit data directly with simple tools like text editors, reduces vendor lock-in, and enhances offline capabilities. However, it also introduces challenges related to managing concurrent modifications and ensuring consistency across many small files. Overall, this approach can lead to faster, more reliable systems that are easier to inspect and extend, which is particularly valuable in collaborative, multi-tool environments.

Background and Evolution of Local-First Data Architectures

Traditional project management and productivity tools rely heavily on centralized databases and cloud servers, which can create points of failure, vendor lock-in, and synchronization complexities. This evolution in data architecture is explained in the original analysis. The concept of local-first architecture emerged as a response, emphasizing local data storage that remains consistent and accessible offline. Threlmark’s implementation builds on these principles, treating the disk as the definitive contract, inspired by prior work on file-based data management and resilient sync strategies.

This approach aligns with broader trends toward open, transparent, and portable data systems, addressing limitations of proprietary formats and centralized infrastructure. While many tools have adopted local-first principles, Threlmark’s specific focus on treating disk as the contract, with explicit directory structures and atomic operations, marks a distinctive evolution in the space.

“Treating the disk as the contract fundamentally simplifies synchronization and enhances offline usability, making data more transparent and portable.”

— Thorsten Meyer, Threlmark developer

Unresolved Challenges and Areas for Further Development

While the architecture offers clear benefits, it remains to be seen how well it scales with very large datasets or complex concurrency scenarios. Managing many small files can introduce filesystem overhead, and manual intervention may be needed to resolve conflicts. Additionally, the approach depends on strict adherence to directory contracts, which could be disrupted by manual edits or incompatible tools. The long-term robustness of self-healing mechanisms and conflict resolution strategies is still being tested in real-world use cases.

Next Steps for Threlmark’s Local-First System

Threlmark plans to refine conflict resolution and merge strategies, improve tooling for manual data inspection, and expand integration with external tools that adhere to the directory contract. Further user feedback and real-world testing will shape future developments, potentially including automated conflict detection and resolution, as well as enhanced documentation of directory structures. The project aims to demonstrate the approach’s scalability and robustness in diverse workflows.

Key Questions

How does Threlmark handle concurrent edits?

Threlmark employs atomic writes and tolerant merging to manage concurrent modifications. Each change is written to a temporary file before replacing the original, reducing corruption risk, while merging strategies aim to preserve data consistency.

Can I manually edit data files without breaking the system?

Yes, since data is stored in plain files within a structured directory, manual edits are possible. However, they should follow the established format and conventions to avoid conflicts or inconsistencies.

What are the main advantages of this architecture?

It enhances offline usability, simplifies synchronization, reduces vendor lock-in, and makes data transparent and portable. It also allows direct editing with simple tools like text editors.

What challenges does this approach face?

Managing many small files can introduce filesystem overhead, and conflict resolution in concurrent editing scenarios remains complex. Ensuring consistency across files is an ongoing challenge.

Is this approach suitable for large-scale or enterprise systems?

While promising for small to medium workflows, scalability and performance in large-scale environments are still under assessment. Further testing is needed to confirm its suitability for enterprise use cases.

Source: ThorstenMeyerAI.com

You May Also Like

Rogue One: The Andor Cut — On Fan Editing as Tonal Reverse-Engineering

A fan edit reimagines Rogue One as if made after Andor, blending tonal elements from the series with the film’s footage, sparking discussion on fan editing and Star Wars storytelling.

One markdown file, publish-ready for every platform

A web tool now enables creators to turn a single markdown file into platform-specific formats, streamlining content distribution for independent creators.

Augmented Reality Apps You Can Use Today—Beyond Gaming

Pioneering augmented reality apps are transforming everyday tasks beyond gaming, offering exciting ways to shop, learn, and navigate—discover how they can enhance your life.

Smartphone Tricks: Hidden Features You Should Be Using

Just when you thought you knew your smartphone, discover hidden tricks that can boost your efficiency—keep reading to unlock these secrets.