LabelFacts
An app for understanding product labels and tracking everyday choices.


- Project
- LabelFacts
- Our role
- Design · Software development
- Platforms
- iOS · Android
01 / Behind the product
A real need. A considered solution.
Challenge
Reading a product label and tracking everyday choices are different tasks. Barcode lookup has its own problem: if every scan waits on an external API the experience is slow, and if the source provider goes down the app stops working.
Approach
Lookup runs through a four-layer chain: an in-session memory cache (zero latency), a Firestore cache, a Cloud Function that runs the full API chain server-side, and a direct Open Food Facts fallback if that fails. The barcode format is validated locally first. The scoring engine combines Nutri-Score, the NOVA processing level and its own ingredient database, and a methodology screen inside the app explains how the score is built. The daily view brings selected products and the day’s summary together; the paywall runs on RevenueCat.
Result
Barcode and product search, scan history, category rankings and a daily product journal; the Firebase-backed iOS and Android app was delivered to the client. An archive project.
02 / Inside the product
The experience, on screen.
Open a screen to explore the details.02 images
03 / Scope & details
The details make the experience.
- 01
A four-layer lookup chain: memory, Firestore, Cloud Function, Open Food Facts
- 02
Scoring that combines Nutri-Score, NOVA and an ingredient database
- 03
An in-app methodology page
- 04
Scan history, rankings and a daily product journal
Technology
INSIDE THE PRODUCT
The engineering behind the interface.
Systems we built and concrete problems we addressed in this project.
A four-layer lookup chain
lookupProduct validates the barcode format (8–14 digits) first, then walks session memory → Firestore cache → Cloud Function → direct Open Food Facts. A product opened from history never touches Firestore; no loading flash.
Scoring is transparent
src/lib/scoring combines Nutri-Score, the NOVA processing level and its own ingredient database; the score is capped in specific cases and the in-app methodology page explains it.
Offline and payments
NetInfo tracks connectivity and FlashList keeps long lists smooth; the RevenueCat paywall and Meta SDK events ship in the same app.
Your idea could be next.
What could we build for you?
From a first release to a growing platform. Let’s plan the design, development and launch together.
From Türkiye to the US, UK, Australia and everywhere in between.