TL;DR
Threlmark treats local disk storage as the authoritative record, not a server. This approach simplifies sync, boosts privacy, and makes data portable. It’s a practical, offline-first architecture that redefines how project tools work.
Imagine managing your entire project roadmap on your laptop, with every change saved directly to disk. No cloud, no server, no login required. That’s the essence of Threlmark’s local-first architecture: your device’s storage is the single source of truth.
This approach flips the usual cloud-centric model on its head, emphasizing offline-first work, data ownership, and seamless multi-device sync. You’re not just storing data locally; you’re building a system where the disk itself becomes the contract — the ultimate authority on your project’s state. It’s a radical shift, but one that offers clarity, control, and resilience for modern workflows.
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.
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.
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.

SANDISK 1TB Extreme Portable SSD (Old Model) – Up to 1050MB/s, USB-C, USB 3.2 Gen 2, IP65 Water and Dust Resistance, Updated Firmware – External Solid State Drive – SDSSDE61-1T00-G25
Get NVMe solid state performance with up to 1050MB/s read and 1000MB/s write speeds in a portable, high-capacity…
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.
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.
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.
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.
Seagate One Touch 8TB External Hard Drive Desktop HDD – USB-C Compatible with Most Windows and macOS, Rescue Recovery (STNB8000400)
No wall warts: Work freely with its bus-powered USB-C. No wall outlet required.
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.

Information Technology Project Management (MindTap Course List)
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.
POST /api/projects/:id/
items/:itemId/reportDirect call. Applied immediately.
drop reports/.json
→ ingested on read Robust even if the server’s down at finish time.
local storage data synchronization tool
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.
Static read-only demo
Seeded data, writes to localStorage. Try-before-you-clone.
Personal Node instance
Password-gated, persistent backed-up THRELMARK_DATA_DIR.
Multi-tenant SaaS
Add accounts + per-tenant isolation. A separate build.
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.
Key Takeaways
- Treat your local disk as the definitive source of truth, making data inspection and backup straightforward.
- Design your system so that files are atomic, conflict-tolerant, and easily mergeable to prevent data corruption.
- Sync is a background process—use existing tools like Dropbox or Syncthing to keep data consistent across devices.
- This architecture enhances privacy and control, especially when encrypting local files and avoiding central servers.
- While powerful, local-first may not suit large, ultra-collaborative teams, but it excels for solo work and privacy-focused projects.
What ‘disk is the contract’ really means for your data
When Threlmark says “disk is the contract,” it means your local JSON files are the real deal. They’re the primary, authoritative source of all project info. This matters because it shifts the paradigm from relying on remote servers to trusting your local storage as the ultimate arbiter of truth. The implication is that your data’s consistency, accuracy, and integrity are directly tied to the files on your disk, not a central database. This approach reduces dependency on network reliability and server uptime, offering greater resilience. However, it also means you need to be mindful of local file management—backups, conflict resolution, and versioning become critical. The tradeoff is between control and complexity: you gain transparency and autonomy but must handle some aspects traditionally managed by servers. For example, each project has a folder with a project.json and individual cards are stored as items/. This setup makes every piece of data directly inspectable, easy to back up, and simple to sync across devices. It’s like having a transparent, living document that your tools and scripts can read and write without any middleman, giving you a clear line of sight into your project’s state at all times. You can learn more about this local-first architecture.

How this approach differs from traditional cloud-first apps
Traditional apps treat the server as the ultimate authority. Your data lives in a database, and your device just syncs or fetches updates. Threlmark’s local-first design flips this by making the local disk the true source of truth. This shift has profound implications. It means that your work is always grounded in a reliable, accessible source—your local files—regardless of internet connectivity. Read more about this local-first approach. The tradeoff is that you must ensure your local data is well-managed; conflicts, backups, and versioning become your responsibility, not the app’s. For more on managing local data, see local-first data management. Think of it like keeping a detailed notebook on your desk. When you write in it, the notebook is always the current state. Cloud sync is just an optional backup or collaboration layer, not the core. This makes working offline seamless, since your local files are always current, and sync happens in the background. If your internet drops, your project continues without a hitch, and when you reconnect, changes merge automatically, maintaining consistency. This resilience reduces the risk of data loss due to network issues, and empowers you to work without interruption. The tradeoff is that you need to be disciplined about managing local files and backups, but the benefit is a more robust, privacy-conscious workflow that isn’t dependent on constant connectivity.
Why local-first is a game-changer for productivity and privacy
Local-first systems like Threlmark aren’t just about working offline. They fundamentally redefine what it means to own your data. When all data resides on your device, you have complete control over access, sharing, and encryption. This decentralization minimizes exposure to third-party vulnerabilities and gives you the power to implement your own security measures. The implication is a significant boost in privacy and security, especially for sensitive projects. For instance, a remote developer using Threlmark on a laptop can keep their data encrypted locally, reducing the risk of leaks or breaches associated with cloud storage. The speed advantage is also notable: accessing local JSON files is almost instantaneous, avoiding delays caused by remote queries or network latency. Discover more about local data access benefits. This means faster workflows, quicker updates, and less frustration. Additionally, because you control the data, you can tailor security practices—like end-to-end encryption or custom access controls—to fit your needs. This approach shifts security responsibility from relying on external providers to managing your own environment, which can be more trustworthy and transparent. The tradeoff is that you must be proactive about backups and encryption, but the benefit is a more private, resilient, and flexible system that puts you in the driver’s seat of your data security.

How sync actually works in Threlmark’s local-first setup
Sync in Threlmark isn’t the core. It’s a background process that updates files across devices. Learn about local-first sync mechanisms. The app reads and writes JSON files directly, then uses a sync layer—like Dropbox, Syncthing, or custom scripts—to keep data consistent. This setup leverages existing tools, but the real strength is in understanding the implications. Because files are atomic and stored locally, sync becomes a matter of detecting file changes and propagating updates—much like how you’d synchronize a folder manually. When a change occurs, the sync layer compares file hashes or timestamps, then transfers only the modified files. This process is inherently conflict-tolerant: if two devices modify the same file simultaneously, the system can merge changes based on timestamps or prompt the user for resolution. The key is that the system treats sync as a secondary process, not the foundation—your data’s integrity depends on proper file management and conflict resolution. This approach is simple, robust, and compatible with any tool that can read/write files, making it highly adaptable. It also emphasizes that the core of the architecture is the local disk, with sync acting as a reliable but secondary layer to ensure consistency across devices.
Handling conflicts and collaboration without a central database
Conflicts are inevitable when multiple devices edit the same data. Threlmark handles this by preserving all changes and merging them intelligently. It relies on timestamps, version history, or explicit user choices. This means that instead of locking files or preventing simultaneous edits, the system allows concurrent modifications and then reconciles differences. For example, if two editors modify a task at the same time, the system compares timestamps and merges the updates, creating a comprehensive record that includes both sets of changes. If conflicts are complex, the system can prompt the user to choose the preferred version or manually resolve discrepancies. Because each card is a separate JSON file, conflicts are localized, making resolution straightforward and less error-prone. This approach fosters a more natural collaboration experience—no locking, no complex merge tools—just clear, predictable conflict management. The tradeoff is that conflicts require some oversight, but the benefit is a more flexible, resilient system that supports real-time work without central coordination, aligning with the core philosophy of local-first design.

Security, privacy, and ownership — what’s really at stake?
Since data lives on your device, you’re in control of privacy. You decide what to encrypt, share, or keep local. This decentralization reduces reliance on third-party servers that can be vulnerable to breaches or subpoenas. The implication is that your data security becomes a matter of your local environment—encryption, access controls, and backups. However, local storage isn’t foolproof; if your device is lost or compromised, so is your data, unless you’ve taken steps to protect it. For example, a journalist working on sensitive material can encrypt their disk or use secure backups, minimizing risk. This paradigm shifts security from trusting external providers to managing your own environment. It’s a more transparent model, but it requires discipline—regular backups, encryption, and device security are essential. The tradeoff is increased control and privacy, but also increased responsibility. This model suits those who prioritize data sovereignty and are willing to manage their security measures proactively, rather than relying solely on external cloud providers.
Trade-offs: when local-first might not be perfect
While local-first offers many advantages, it’s not a silver bullet. Handling large-scale, real-time collaboration with hundreds of concurrent users can become complex. Managing conflicts, ensuring consistency, and maintaining performance at scale require additional infrastructure or strategies. For example, a large team working on a shared project may find it challenging to coordinate edits without a central server to orchestrate changes. Additionally, if a device fails or you forget to sync, data can be lost, emphasizing the importance of disciplined backup routines. The architecture demands that users understand and accept these limitations—it’s best suited for solo developers, small teams, or projects where privacy and offline access are priorities. Recognizing these tradeoffs helps in making informed decisions about when and how to adopt a local-first approach.

Getting started with Threlmark: practical tips and tools
To begin, set up your data directory—default is ~/.threlmark. Use plain JSON files to define your projects and cards. Keep your files small and atomic for easy editing and conflict resolution. This discipline ensures that each change is manageable and reduces the risk of complex conflicts. Leverage tools like Threlmark’s GitHub repo for sample setups. Sync your data folder with Dropbox or Syncthing for multi-device updates. Use simple scripts or editors to modify files directly. The key is to develop a consistent workflow: commit atomic changes, back up regularly, and treat your disk as the master record. Over time, this disciplined approach becomes second nature, providing a robust foundation for your projects. Embracing this method offers a powerful way to maintain control and transparency in your workflow, leveraging existing tools and simple practices.
Frequently Asked Questions
What does ‘disk is the contract’ actually mean?
It means your data lives directly on your device’s filesystem as plain JSON files, which serve as the authoritative source. This setup makes your data inspectable, portable, and independent of any central server.How is this different from offline mode in typical apps?
Offline mode usually means the app temporarily works without internet, syncing later. In contrast, ‘disk is the contract’ means the local disk is always the real record, and the app simply reads/writes directly to that disk—offline or online—without relying on a server.How does sync work if the device is the source of truth?
Sync becomes a background process that propagates changes via tools like Dropbox or Syncthing. Files are atomic, and the system merges updates based on timestamps or conflict rules, ensuring consistency across devices.What happens when two devices edit the same data?
The system preserves both changes and merges them intelligently, often based on timestamps. Conflicts are localized to individual files, making resolution straightforward without complex merge tools.Is local-first more secure or just differently risky?
It’s more about control than inherent security. Your data stays on your device, reducing reliance on third-party servers. However, it shifts the security burden to local encryption, backups, and device security measures.Conclusion
Threlmark’s approach turns the usual cloud-centric model on its head. By making the disk the contract, it empowers you with control, resilience, and simplicity. It’s not just about offline support—it’s a fundamental shift in how we think about data and collaboration.
Next time you set up a project tool, ask yourself: could the disk be the real boss? Embrace the local-first mindset, and you’ll find your workflow more flexible, private, and robust. Your data—your rules.