The new app is located at https://github.com/openfoodfacts/smooth-app. We would like to use some part of this to create a Swift SDK for Open Food Facts. Will you help us ?
Open Food Facts is a food products database made by everyone, for everyone. Open Food Facts on iPhone and iPad has 0,5M users and 1,6M products. Each contribution you make will have a large impact on food transparency worldwide. Finding the right issue or feature will help you have even more more impact. Feel free to ask for feedback on the #android channel before you start work, and to document what you intend to code.
OpenFoodFacts has a Slack chat room where we discuss and support each other, join the #iOS and #iOS-alerts channels.
- Barcode scanning (including a simple offline mode)
- NOVA, Nutri-Score and Eco-Score display (including in grey if we don't have them yet for the product)
- Ingredient analysis with a simple way to get it if not available
- Product page (needs revamping)
- Search for products based on name
- Allergen alerts (would need to be more discoverable)
- Internationalised user interface & multilingual products handling (view & data addition)
- Product addition & editing (incl. on-the-fly OCR of ingredients and labels, plus integration of the OFF AI)
- Image upload
- Night mode
Automatically generated code documentation on the wiki
The easiest way to setup the dependencies of the project and generate the Xcode project is to run sh scripts/setup.sh
from the top of the repository, before opening the project in Xcode.
We currently use Carthage for dependency management. New to Carthage? Others have found the following resources helpful:
Before opening the project in Xcode, run
brew install carthage
carthage bootstrap --platform iOS --cache-builds
To generate the Xcode project run sh scripts/create-project.sh
.
In order to generate the Xcode project we use XcodeGen.
See the fastlane/README.md for a list and description of all lanes.
To launch a lane, you must have several env variable set. This can be done by creating a .env
file in the fastlane
folder, and fill it (see .env.example
)
You can install Fastlane with Homebrew:
brew cask install fastlane
fastlane snapshot
A script runs when building the app that executes SwiftLint to enforce style & conventions to the code.
You can install SwiftLint with Homebrew:
brew install swiftlint
You can help translate Open Food Facts (no technical knowledge required, takes a minute to signup).