finds.dev← search

// the find

openfoodfacts/smooth-app

★ 1,386 · Dart · Apache-2.0 · updated Jul 2026

🤳🥫 The new Open Food Facts mobile application for Android and iOS, crafted with Flutter and Dart

The Flutter front-end for Open Food Facts — scan a barcode, get Nutri-Score, Eco-Score, allergen info, and additive lists pulled from a crowdsourced database of 3+ million products. It's a real production app with 1300+ stars and active releases, not a demo project. Aimed at Flutter developers who want to see how a large, multi-platform mobile app is structured at scale.

The monorepo package split is well thought out — scanner backends (MLKit vs ZXing), app store variants (Google Play, F-Droid, Apple), and the core app are separate packages with their own pubspecs, so you can swap implementations without touching the main app. The CI pipeline is thorough: separate workflows for translation validation, dependency review, Waldo UI sessions, and multiple release tracks (internal, beta, production) all automated via Fastlane. The Figma-first design process with a defined graphic charter means the UI is intentional rather than ad hoc. Contributing infrastructure is unusually good — weekly video meetings, structured issue templates, CODEOWNERS, Hacktoberfest participation — this is a project that actually onboards outside contributors.

The multi-entrypoint setup (separate `main_google_play.dart`, `main_ios.dart`, etc.) plus shell scripts that mutate `pubspec.yaml` to swap dependencies is fragile and confusing — a new contributor will be lost without reading the CI scripts carefully. The Flutter version is pinned to 3.41.8 via FVM, which is fine in principle, but the README's troubleshooting section already documents cache-busting workarounds for pub dependency conflicts, which suggests the dependency graph is under stress. Test coverage appears thin from the repo structure — most `test/` directories contain a single placeholder test file, so there's no meaningful automated regression safety net for a production app of this size. Offline behavior isn't documented at all in the README, which matters a lot for a scanning app used in supermarkets with spotty connectivity.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →