Designing a Local-First Collection Tracker Without User Accounts
A collection tracker has a small data model: an item identifier and an owned state. Yet many implementations begin with authentication, a database, password recovery, email verification, and account settings. That infrastructure can be justified when users need synchronization, but it is unnecessary for a quick personal checklist.
Local storage is a useful default when three conditions are true:
- The data is not sensitive.
- The user mainly returns on the same device.
- Losing the data is inconvenient rather than costly.
The Aniimo collection tracker is a concrete example. It covers the current 94-creature roster, lets players mark entries as owned, and filters between owned and missing items. Progress stays in the browser, so no account is required.
Keep the schema boring
A minimal record can contain the version of the roster and an array of stable creature IDs. Names should not be used as keys because spelling or localization may change. When the roster changes, a migration can preserve known IDs and add new entries as unowned.
Make storage behavior explicit
Local-first should not be confused with cloud-backed. The interface needs to tell users that clearing browser data or switching devices may remove progress. An export and import option is a useful next step because it preserves the no-account design while giving users control over backups.
Design for fast correction
Collection state is edited repeatedly, so each card needs a clear selected state and a large click target. Bulk reset should require confirmation. Filters should not hide the fact that an item was successfully changed. Keyboard focus and screen-reader labels also matter because icon-only controls can become ambiguous.
Add accounts only when the product needs them
Synchronization, public profiles, shared collections, or cross-device history are valid reasons for authentication. “Every app has login” is not. Starting local-first keeps the first session short and removes a major point of abandonment.
For small utilities, less infrastructure can be a product feature. The user opens the tracker, records the collection, and leaves without creating another identity to manage.

