Skip to content

simonoppowa/OpenNutriTracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1,000 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Logo

OpenNutriTracker

Description

OpenNutriTracker is an open-source mobile application designed to simplify nutritional tracking and management. Whether you are looking to improve your health, lose weight, or simply maintain a balanced diet, OpenNutriTracker provides a minimalistic interface to easily track and analyze your daily nutrition.

Website

Screenshots

Logo Β Β  Logo Β Β  Logo Β Β  Logo

Install

Key Features

  • 🍎 Nutritional tracking: Log meals and snacks against a large food database (Open Food Facts plus a curated subset of USDA FDC). Each entry can be searched, scanned, or added straight as a number when you already know the calorie cost.
  • πŸ““ Food diary: A calendar-driven diary that breaks the day into Breakfast, Lunch, Dinner, and Snack, with per-meal kcal targets (Standard, OMAD, Five-small, Mediterranean, Two-meal, or a custom share), drag-to-rearrange between meals, and sort by time or by macro contribution.
  • πŸ₯• Micronutrient panel: Day and week views for fibre, sodium, saturated fat, sugar, calcium, iron, potassium, vitamin D, vitamin B12, and magnesium, with optional Dietary Reference Intake bars from the IOM tables so you can see where you sit against the reference range.
  • 🍽️ Custom meals + recipes: Build a one-off custom meal or save a reusable recipe with photo, brand, and barcode. The recipe builder has its own ingredient picker with barcode scanning so you can compose meals from real products without leaving the screen.
  • ⚑ Quick add: When you already know roughly how much you ate, skip the search flow entirely β€” Quick add takes a title plus kcal (and optional macros) and logs it straight to the meal section.
  • πŸ“· Barcode scanner: Scan packaged items for instant lookup, paste a barcode manually when the camera struggles, or attach a barcode to a custom meal so future scans recognise your own foods.
  • πŸƒ Activities: Log workouts from a categorised activity catalogue or define your own custom activities with direct kcal entry and reusable templates.
  • πŸ’§ Water tracker: A water chip on the home screen with quick-add increments, an editable goal, and undo for the last entry.
  • ⏱️ Fasting timer: Optional intermittent-fasting timer with content-warning gate, a home chip showing time remaining, and a completion notification when you reach your window.
  • βš–οΈ Weight history: Capture weight during onboarding and on demand, see the trend on a chart with a dashed line at your target weight, and optionally taper the calorie goal as you approach it.
  • 🎨 Material You + theme picker: Adopt the system accent colour on Android 12+, or pick from sixteen built-in presets. The app icon adapts to iOS dark and tinted appearances and to Android themed icons.
  • πŸ”’ kcal or kJ: Switch the energy unit globally; every diary entry, target, and chart reflects the choice.
  • πŸ“€ Export and import: Export your full diary, activities, and custom catalogue to a JSON zip or CSV, paste a JSON blob to import meals, and share a single meal or activity as a QR code another phone can scan.
  • πŸ”’ Privacy first: All data is AES-encrypted and stored locally. Anonymous crash reporting is opt-in during onboarding, can be turned off at any time, and the App Store privacy manifest declares exactly what the app does and does not collect.
  • πŸš«πŸ’° No subscriptions, in-app purchases, or ads: OpenNutriTracker is free, with no paid tier and no advertising.

Privacy

See Data Protection

  • Data Encryption: All collected user data is encrypted and stored locally on your device
  • Minimal Data Collection: OpenNutriTracker only collects the necessary information required for tracking nutrition and providing personalized insights. Your data will not be shared with third parties without your consent.
  • Open-Source: OpenNutriTracker is an open-source application

Verifying APK signatures

If you are side-loading an OpenNutriTracker APK from GitHub Releases β€” or from F-Droid, once the app is published there β€” you may reasonably want to confirm that the file you downloaded was signed by the same key the maintainer uses for every release, rather than by someone who intercepted the download or repackaged the app. The check below is for anyone who would like that extra reassurance before installing.

The official SHA256 fingerprint of the Android release signing certificate is:

TODO(simon): paste fingerprint from release keystore β€” see "Generating the SHA256 fingerprint" in RELEASE.md

To verify a downloaded APK against that fingerprint, run:

apksigner verify --print-certs /path/to/opennutritracker.apk

The SHA-256 line in the output should match the value above exactly.

Contribution

Contributions to OpenNutriTracker are welcome! If you find any issues or have suggestions for new features, please open an issue or submit a pull request. See CONTRIBUTING.md for the project's conventions β€” including the requirement to target the develop branch and the steps for adding localized strings.

Thanks to all the contributors:

Getting Started With Development

See the Getting Started file for more information.

The data export bundle (Settings β†’ Export / Import App Data β†’ Export) is documented at docs/export-format.md β€” both the JSON schema and the CSV companion the import / export round-trip uses.

Self-hosting the Supabase FDC database for local development is documented at docs/supabase-fdc-self-hosting.md.

Disclaimer

OpenNutriTracker is not a medical application. All data provided is not validated and should be used with caution. Please maintain a healthy lifestyle and consult a professional if you have any problems. Use during illness, pregnancy or lactation is not recommended.

The application is still under construction. Errors, bugs and crashes might occur.

Acknowledgments

The OpenNutriTracker project was inspired by the need for a simple and effective nutrition tracking tool. The food database used in OpenNutriTracker is powered by Open Food Facts and Food Data Central. A curated subset of FDC is hosted in Supabase to keep search responsive on slow connections; the schema and refresh process are documented in docs/supabase-fdc-self-hosting.md.

Dietary Reference Intake values for the micronutrient panel come from the U.S. National Academies' Institute of Medicine tables. The in-app Sources & References screen (one tap from the home calorie ring or the profile BMI card) lists the peer-reviewed sources used for energy needs, BMI classification, macro distribution, MET activity calories, and non-binary calorie estimation.

License

This project is licensed under the GNU General Public License v3.0 License. See the LICENSE file for more information.

Contact

For questions, suggestions, or collaborations, feel free to contact the project maintainer:

Simon Oppowa

About

🍴 OpenNutriTracker is a free and open source calorie tracker with a focus on simplicity and privacy.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Sponsor this project

  •  

Packages

 
 
 

Contributors