Firefly Labs
← 블로그

Local-first, always

A lot of modern tools assume a cloud backend. Login first, then maybe you can use the product. Your tasks, notes, and credentials live on someone else's disk — encrypted, probably, but not yours.

We build the other way.

The /firefly/ layout

When you run fly setup, the filesystem gets a predictable structure:

/firefly/
├── apps/       ← installed applications
└── config/     ← per-app data and state

firetasks stores tasks.json. firekeep stores an encrypted vault. firecalendar stores events. Nothing phones home. Nothing needs an account.

This is not a privacy marketing angle. It is an architectural one: local data is faster, offline-capable, and under your control by default.

What we skip

  • User authentication as a prerequisite
  • Sync conflict resolution
  • Subscription tiers to access your own files
  • Analytics on how you use a todo list

If you want sync, you can layer it yourself — syncthing, git, a NAS, whatever you trust. The tools do not block that. They also do not require it.

The tradeoff

Local-first means you own backups. Local-first means no cross-device magic out of the box. We think that is a fair trade for tools that will still work when the company's servers do not.

That is the bet we are making across the lab.