Welcome to the PickyPal GitHub repo!

PickyPal is a convenient and easy-to-use food scanning app that allows you to scan any barcode and instantly see if the product is suitable for your dietary needs. Whether you have allergies to gluten, nuts, soy, or lactose, or you follow a vegetarian, vegan, or palm-oil-free diet, PickyPal has got you covered.


Getting Started

To get started, simply clone the repo and follow the instructions in the README file. We recommend using the latest version of Android Studio to build and run the app.


We’re always working to improve the app and make it more useful for our users, so we welcome contributions from the community. If you’re interested in contributing to the project, please follow the standard Git workflow:

  1. Fork the repo
  2. Create a new branch for your changes
  3. Make your changes and commit them
  4. Push your changes to your fork
  5. Create a pull request to the main repo


If you encounter any issues or have any questions, please don’t hesitate to open an issue on the repo. We’re always happy to help and appreciate any feedback that can help us improve the app.

Add a new allergy

Generate icon

  1. Visit (https://icons8.com/)[https://icons8.com/]
    • Search for the icon you want to use
    • Download it and convert it so (svg)[https://convertio.co/png-svg/]
    • Make sure to rename the file to {allergy}.svg
    • Add the file to the assets/images/allergies/png and assets/images/allergies/svg folders
  2. Turn the svgs into a font
    • Visit (https://www.fluttericon.com/)[https://www.fluttericon.com/] and upload the svg files
    • Download the font and add the ttf to fonts/ as Allergies.ttf
    • Add the font to pubspec.yaml

          - family: Allergies
              - asset: fonts/Allergies.ttf
    • Replace the allergies_icons.dart file with the one generated by fluttericon
  3. Add the icon to the app
  4. Add the parameters to Allergy.dart
    • Add a new factory method to Allergy.dart
    • Add a new bool or enum YESMAYBENO to the Allergy class
  5. Add the allergy to the settings and UserPreferences
    • Add the allergy to the settings page
    • Add the allergy to the UserPreferences class
  6. Add the allergy to the product
  7. Add the language strings
    • Add the allergy to the language strings in “lib/languages/app_en.arb”
    • Add the allergy to the language strings in “lib/languages/app_de.arb”
    • Run flutter gen-l10n to generate the new language strings
    • Check “lib/languages/untranslated.txt” for missing translations


View Github