Open Food Facts - Codename: "Smooth App"
A new Flutter application by Open Food Facts
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.
You can join the Open Food Facts's Slack here : Get an invite - Open our Slack.
full project documentation will be added here when ready
Wiki & Doc
- https://github.com/openfoodfacts/smooth-app/wiki
- https://wiki.openfoodfacts.org/Project_Smoothie
- https://openfoodfacts.github.io/smooth-app/
V1 Roadmap
V2 - Later Roadmap
Screenshot automation
- Add multilingual screenshot generation using Fastlane (Scan screen, settings screen, personalized ranking screen, home screen) - openfoodfacts#217
Navigation
- Fix navigation for the iOS build (iOS does not have a back button, and gestures are not intuitive for most people) - openfoodfacts#17
Debt removal
- Remove the hack on the category explorer - openfoodfacts#19
Personalized results
- Allow to filter results by country and by store openfoodfacts#99
Gamification
- User management + Small point system for contributions
Product page
Scanning
- Allow the user to find alternatives products on a scan even if (s)he has scanned only 1 product openfoodfacts#23
- Add offline scanning to ensure results in all conditions openfoodfacts#18
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
Android
- Nothing to report
iOS
- We need to change the supported architectures for iOS when we open the project in Xcode. There, in the settings, you can specify which ones you want to build for, and only specify the ones that are 64 bit.
- Fastlane is failing
Internationalization
Translations of the interface are managed using the new Flutter internationalization introduced in Flutter 1.22. New strings need to be added to lib/l10n/app_en.arb and the corresponding translations can be added through CrowdIn. Do not edit the other app_*.arb files as they will be overwritten by CrowdIn.
Thank you
Smooth_app is made possible thanks to a grant by the Mozilla Foundation, after pitching them the idea at FOSDEM. a HUGE thank you :-)