Skip to content

openfoodfacts/openfoodfacts-kotlin

Repository files navigation

Open Food Facts - Kotlin

Splash

Kotlin Multiplatform package for the Open Food Facts API. Easily access more than 1.9 million products from all around the world. Open Food Facts is powered by contributors from around the world and is constantly growing thanks to them.

⚡ Quick Start

  1. See the library in action by running the Multiplatform Dev Application.
  2. To start using this Library in your own Kotlin applications, see the Library Documentation.

📚 Repository Contents

In order of relevance:

Folder Description Documentation
/openfoodfacts-kotlin Kotlin Multiplatform Client Library Link
/openfoodfacts-kotlin-dev-app Development Application Link
/openfoodfacts-composite Gradle Composite workspace for Library & Dev App Link
/scripts Shell scripts to perform common tasks Link
/build-system Gradle plugin providing common build functions Link
/repository/maven/ci File-based Maven repository for CI/Dev usage Link
/doc Extra Documentation/Assets Link

⚖️ General principles

  • You can look for information about products, including many useful computed values.
  • If you can't get the information on a specific product, you can get your user to send photos and data, that will then be processed by Open Food Facts AI and contributors to get the computed result you want to show them.
  • You can also implement the complete flow so that they get immediately the result with some effort on their side.

If your users do not expect a specific result immediately (eg. Inventory apps)

  • Send photos (front/nutrition/ingredients/packaging): most painless thing for your users
  • The Open Food Facts AI Robotoff will generate some derived data from the photos
  • Overtime, other apps, and the Open Food Facts community will fill the data gaps

If your users do expect a result immediately (eg Nutrition apps, Scoring apps…):

  • Send nutrition facts + category > get the Nutri-Score
  • Send ingredients > get the NOVA group (about food ultra-processing), additives, allergens, normalized ingredients, vegan, vegetarian…
  • Send category (strict minimum) + labels + origins of ingredients + packaging (photo and text) > get the Eco-Score (about environmental impact)

💁 Contributing

TBC

📄 Open Data Licence

The database in under the OdBL. This means attributing the source and also contributing back any additions (photos, data), which this package makes easy to do. You can check the terms of use here : Terms of use.

🤝 Third party applications

If you use this SDK, feel free to open a PR to add your application in this list.

We are also very interested in learning what the Open Food Facts data is used for. It is not mandatory, but we would very much appreciate it if you tell us about your re-uses so that we can share them with the Open Food Facts community. You can also fill this form to get a chance to get your app featured.

🧑‍🤝‍🧑 Authors