Build log
Hypelist: one app, two storage modes, no cloud requirement
Why an inventory app for resellers supports both Firebase and SQLite behind the same Flask backend, and what the dual-mode abstraction costs.
Source: Public repository: chasedndt/Hypelist
Context#
Hypelist tracks streetwear inventory, listing prep and sales for resellers — data a solo operator may reasonably refuse to put in someone else's cloud, and that a multi-user deployment can't keep on one laptop.
Decision#
Rather than choosing, the Flask backend runs against a swappable persistence layer: SQLite for local-first single-operator use, Firebase for hosted multi-user mode. The React frontend does not know which one it is talking to.
Trade-offs#
Every schema change now has two migration stories, and the abstraction layer forbids leaning on either store's special features. That is real, permanent overhead — accepted because the local-first mode is a product promise, not a development convenience.
Current status#
Working in development. Stripe integration exists as documented setup rather than live billing, and stays that way until the repo passes a hygiene review.