smooth-app icon indicating copy to clipboard operation
smooth-app copied to clipboard

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

New Open Food Facts mobile app for Android and iPhone - Codename: "Smooth App"

SmoothApp Post-Submit Tests

Latest commit deployed to App Stores: (August 4th 2022) https://github.com/openfoodfacts/smooth-app/releases/tag/v3.6.0

A new Flutter application by Open Food Facts. You can install it on Android or iPhone/iPad. Note that a internal development build (Android or iPhone/iPad )if you'd like to use the results of your PRs quicker.

Smoothie. We pioneered the collaborative scanning app in 2012. With this experimental app, we’re reinventing it from the ground up, and this time, it’s personal.

You get:

  • a scan that truly matches who you are (Green: the product matches your criteria, Red: there is a problem, Gray: Help us answer you by photographing the products)
  • a product page that's knowledgeable, building on the vast amount of food facts we collect collaboratively, and other sources of knowledge, to help you make better food decisions

You can:

  • scan and compare in 15 seconds the 3 brands of tomato sauces left on the shelf, on your terms.
  • get a tailored comparison of any food category
  • set your preferences without ruining your privacy

Criteria you can pick:

  • Environment: Eco-Score
  • Health: Additives & Ultra processed foods, Salt, Allergens, Nutri-Score

Presentation

This new mobile application aims to showcase Open Food Facts's power to a broad range of users through a smooth user experience and sleek user interface.

Smooth-app is developed in parallel to the openfoodfacts-dart plugin, which provides a high level interface with the Open Food Facts API. Every new interaction with the API should be implemented in the plugin in order to provide these new features to other developers.

Contributing - What can I work on ?

Are you a developer? A graphic designer? Full of innovative ideas to help users improve their mode of consumption? Then join us! We are always looking for new contributors, if you're willing to help please let us know, we'll be pleased to introduce you to the project.

Weekly meetings

We usually meet on Thursdays at 15:30 GMT (UTC) at https://meet.google.com/gnp-frks-esc. Please email [email protected] if you want to be added to the Calendar invite for convenience

Wiki & Doc

Custom dependencies (forked versions)

  • g123k/plugins - We use our own fork of the camera plugin to be able to hotfix problems in it we find.

V1 Roadmap (Shipped on June 15th 2022 for Vivatech)

  • [x] We should be able to ship the Smoothie code to the main listing on Android and iOS
  • [x] The app should be able to scan very well
  • [x] Minimal Road to Scores (you should be able to get Nutri-Score and Eco-Score on any unknown/uncomplete product in 2 minutes, using editing and/or product addition
    • [x] Initial photo taking, good ingredient extraction, Nutrition input, Category input (TODO)
  • [x] Database migration for existing Android and iOS users (minimum: history, credentials, if possible with allergen alerts, lists)
  • [x] A Welcome scan card that can broadcast a message from the Open Food Facts team per country/language (Tagline)
  • [x] On-page photo refresh capabilities (Not working well)
  • [x] V1 tracking

V1.1

  • [x] Allow to switch languages
  • [x] Allow to expand search results to the world

Next

Scanning

Contribution

  • [ ] Speedup image upload
  • [ ] Improve the scan experience when Nutri-Score and Eco-Score are not present (some people don't click on the card even if fully unhelpful)
  • [ ] Offer a faster editing system for power users (and potentially all)
    • [ ] Add power edit mode that concatenates all the editable things for faster contribution
  • [ ] Add a list of things to do contribution wise on the product (via Knowledge Panels or natively), or introduce a "Raw data" mode for power contributors

Value added in browsing

  • [ ] Clarify the alternative product proposition
  • [ ] Reintroduce the portion calculator

Gamification

  • [ ] Add the number of contributions when logged in
  • [ ] Integration with openfoodfacts-events

Settings

  • [ ] Revamped settings that are less cluttered, and can make way in the future for things the user will go see more often.
  • [ ] Personalization system that does not feel weird during setup, where people understand consequence, and where ranking match their expectations even in stretch cases (lack of data on some product, selecting Nutri-Score and all Low-in Nutrients…), where red-lines are clearly shown (allergens) with potential caveats, where solutions are proposed and warning issued in case of lack of data.

Misc

  • [ ] Fix HTTP header and contribution comments

Building

In order to build the application, make sure you are in the packages/smooth_app directory and run these commands :

  • flutter pub get
  • flutter run

Contributing

Please name your pull request following this scheme: type: What you did this allows us to automatically generate the changelog Following types are allowed:

  • feat, for Features
  • fix, for Bug Fixes
  • docs, for Documentation
  • ci, for Automation
  • refactor, for code Refactoring
  • chore, for Miscellaneous things

Dev Mode

  • How to activate it: We now have a in-app dev mode which allows you to debug things faster, or access not-ready-for-primetime features. You can access it by going to Preferences screen > Contribute > Software Development, and then enabling Dev Mode.
  • Feel free to file an issue if you'd like new switches in this dev mode.
  • You can also add new flags for your features.
    • example: https://github.com/openfoodfacts/smooth-app/pull/834

Internationalization

Crowdin Action

Error reporting - Sentry

Track crashes

Thank you

The new Open Food Facts app (smooth_app) is made possible thanks to a grant by the Mozilla Foundation, after pitching them the idea at FOSDEM. a HUGE thank you :-)