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 architecture design makes disk storage the primary data contract, avoiding traditional databases. This approach improves offline capability, simplifies synchronization, and enhances data portability. The system relies on file-based data management with safety mechanisms like atomic writes.

Threlmark has adopted a novel approach where local disk storage serves as the sole source of truth for its data, bypassing traditional databases and servers. This approach is detailed in the original analysis. This design simplifies synchronization, improves offline usability, and makes data portable across tools, marking a significant shift in data management architecture.

Threlmark’s system treats each data item as a separate file stored directly on disk, with atomic write operations ensuring data integrity. The directory structure functions as a contract, explicitly defining how data is organized and accessed, which enhances transparency and interoperability. For a deeper understanding, see this internal resource. This approach reduces complexity related to concurrency and external tool integration, as conflicts are minimized through isolated file updates and self-healing mechanisms that reconstruct state from individual files.

According to Threlmark’s developers, this architecture emphasizes simplicity, resilience, and flexibility. They highlight that by avoiding centralized databases, the system remains portable, easy to inspect, and extendable, with data accessible via simple file operations. The approach also facilitates offline work, as users can modify files directly or with external tools, with changes synchronized back into the system seamlessly.

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
Western Digital 10TB WD Gold Enterprise Class Internal Hard Drive - 7200 RPM Class, SATA 6 Gb/s, 256 MB Cache, 3.5" - WD102KRYZ

Western Digital 10TB WD Gold Enterprise Class Internal Hard Drive – 7200 RPM Class, SATA 6 Gb/s, 256 MB Cache, 3.5" – WD102KRYZ

Available in 1TB to 20TB capacities. | 1As used for storage capacity, 1GB = 1 billion bytes and…

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
GODIAG GT111 for VW Audi Skoda Seat CAN-Bus 3rd & 3.5th Generation Dashboard IM-MO Key Matching Test Platform Cable with POGO PIN to Read & Write Data

GODIAG GT111 for VW Audi Skoda Seat CAN-Bus 3rd & 3.5th Generation Dashboard IM-MO Key Matching Test Platform Cable with POGO PIN to Read & Write Data

Supports VW Audi Skoda Seat: Performs offline key and IM-MO instrument synchronization test, intelligent IM-MO system emergency start…

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 Treating Disk as the Single Source of Truth Matters

This approach fundamentally changes data management by removing reliance on centralized databases, leading to systems that are more resilient, portable, and easier to understand. It reduces vendor lock-in and simplifies data recovery and inspection, which is especially valuable for offline-capable tools. However, it shifts complexity to ensuring safe, conflict-free file operations, requiring careful implementation of atomic writes and merge strategies. For users and developers, this means more control and transparency but also a need for understanding file-based data handling.

Background and Evolution of Threlmark’s Data Architecture

Traditional project management tools rely heavily on databases and cloud servers, which can introduce lock-in, synchronization issues, and dependency on external infrastructure. This evolution is discussed in this related article. Threlmark’s approach is a response to these limitations, emphasizing local-first principles that prioritize user control and system resilience. The concept draws from broader trends in decentralized and offline-first software, with recent developments focusing on treating files as the primary data contract.

Earlier iterations of project tools depended on centralized storage, risking data loss during outages or crashes. Threlmark’s design emerged to mitigate these risks by making each data item a self-contained file, with safety mechanisms to handle concurrent edits and corruption. This evolution aligns with broader movements toward transparent, user-controlled data systems.

“Treating disk as the contract simplifies data management, making systems more resilient and portable.”

— Thorsten Meyer, Threlmark developer

Unresolved Questions About Threlmark’s File-Based System

It is not yet clear how well the system handles complex merge conflicts during concurrent edits, especially in multi-user environments. The scalability of managing many small files and the potential filesystem overhead are still being evaluated. Additionally, the long-term robustness of self-healing mechanisms under various failure scenarios remains to be tested in larger deployments.

Next Steps for Threlmark’s Local-First Architecture

Threlmark plans to release detailed documentation and open-source tools to help developers adopt and extend the system. Further testing in real-world scenarios will evaluate its robustness and performance at scale. The team is also exploring integrations with external tools and workflows to enhance interoperability while maintaining the core principles of disk as the contract.

Key Questions

How does Threlmark prevent data corruption during file writes?

It uses atomic write operations, where data is first written to a temporary file and then renamed over the original, ensuring consistency even if a crash occurs during writing.

Can external tools safely modify Threlmark’s data files?

Yes, the directory structure is a formal contract, and files are designed to be readable and writable by external tools, provided they follow the established format and safety protocols.

What are the main tradeoffs of a file-based data system?

While it offers transparency and portability, managing many small files can introduce filesystem overhead and complexity in maintaining relationships between data items, requiring careful design.

How does Threlmark handle synchronization with external tools?

Synchronization is achieved through direct file access, with mechanisms to detect changes and update data accordingly, leveraging the directory structure as a shared contract.

Source: ThorstenMeyerAI.com

This content is for general information only and is not financial, tax or legal advice. Consult a qualified professional for decisions about your money.
You May Also Like

Three Public Vulnerabilities. Chained.

A chain of three known vulnerabilities was exploited in the TanStack npm packages on May 11, 2026, leading to a supply-chain compromise. Details reveal public research was weaponized rapidly.

732 Bytes to Root. One Hour of Scan Time.

A new Linux kernel bug allows root access via a 732-byte script, discovered in an hour of scan time, collapsing security cost assumptions.

The $9 Billion Signature Tax: How DocuSign’s Business Model Survives on One Assumption

Analysis of how DocuSign’s business relies on a key assumption amid emerging open source alternatives like DocuSeal.

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 and scenes from both to explore new narrative possibilities.