Waistline: a Cordova calorie counter that keeps the food database on the device
Libre calorie counter app for Android. Built with Cordova.
At a glance
- What is it?
- Waistline is a GPLv3 calorie counter and weight tracker for Android, built with Cordova, that stores your food list locally and reaches out to Open Food Facts and the USDA only when you scan or search. It has no ads, no accounts and no in-app purchases, which is exactly what makes it useful and also what limits it.
- Who is it for?
- Adopt Waistline if you want an ad free, account free Android calorie tracker with a food database you control, and you are willing to export a backup yourself before changing phones. Skip it if you need cloud sync, a shared family account or a desktop companion.
- Can I use it commercially?
- Not without permission. GitHub finds no licence file in the repository, and without a licence all rights are reserved by default: you may read the code but not reuse it. Check the README, or ask the authors, before using it.
- Is it still maintained?
- Yes. The repository last received commits 4 days ago.
- What is it written in?
- Mainly JavaScript, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 25, 2026, and from our analysis. They are not legal advice.
Editorial analysis
A Cordova app that keeps the food database on the device
Waistline is a calorie counter and weight tracker for Android, written in JavaScript and packaged with Cordova, Framework7 and several other free libraries. The central design decision is that the record of what you eat lives in a local database you build yourself, not in an account held on someone else's server. That choice cascades into everything else. The diary is a day by day account of food eaten at different times, and the food list is a database created either by typing food details manually, by scanning a barcode, or by searching for a product online. The README is blunt about the commercial side: Waistline contains no ads and no in-app purchases, and it is free and open source software. It states that the app works on Android 5.0 and later, and might work on older devices. A separate FAQ.md in the repository carries the detailed user guide. For someone who wants to log meals on an Android phone without handing a diet history to an advertising company, that brief is unusually clear, and the trade-off you accept in exchange is having no server side backup unless you build one yourself.
Three routes into the food list, and only two need a network
Food entry happens three ways, and the network involvement differs sharply between them. Manual typing is entirely local. Scanning a barcode uses the camera to look a packaged product up. Online search queries a product by name. The last two routes reach Open Food Facts and the USDA food database, and the privacy policy is specific about what leaves the phone: during a scan or a search, the only information sent to either service is the product barcode or the search terms entered. The policy also states that an internet connection is required only when a barcode is scanned, when searching for a product online, or when uploading a product to Open Food Facts, and that no personal data is collected while using the software. Usage data is collected only when interacting with those two databases. The plugin set in the project confirms the mechanism: phonegap-plugin-barcodescanner handles scanning, cordova-plugin-inappbrowser handles the online lookup, cordova-plugin-network-information reports connectivity, and cordova-plugin-camera covers product images. Camera and storage permissions are required so the app can scan barcodes, upload photos, and import and export data.
Installing Waistline means picking a distribution channel
The project offers no build from source recipe in its documentation. It says Waistline can be downloaded from F-Droid or from Google Play, and both links sit at the bottom of the README, so the practical install path is to open the F-Droid listing for com.waist.line or the Play Store listing for the same package identifier, install, and grant camera and storage access when Android prompts. F-Droid is the channel that matches the project's stated values, because the README is openly unhappy about hosting free software on a proprietary system, and it asks readers to consider donating to Open Food Facts, which maintains the online database the app relies on. Contributors take a different path, since the repository is a Cordova project whose toolchain is declared in package.json. The package identity and the postinstall step look like this:
"name": "com.waist.line",
"displayName": "Waistline",
"scripts": {
"postinstall": "patch-package"
},A postinstall hook that runs patch-package explains the patches folder at the repository root, which holds modifications applied to dependencies after installation. The Cordova platforms and the core build dependencies are listed in the same file:
"cordova": "^12.0.0",
"cordova-android": "^15.1.0",
"cordova-browser": "^7.0.0",
"platforms": [
"browser",
"android"
]That a browser platform is configured alongside Android is worth noticing, because it gives you a way to exercise the interface on a desktop during development rather than only on a handset. Your first real use is short. Open the diary, type a food you have actually eaten, assign it to a time of day, and watch it appear in that day's list. Then scan a packaged product with the camera to see whether the community database actually holds usable nutrition data for the things on your shelves. That second step is the real test of the app.
Backup is a file you move, not an account you sign into
There is no user account and no server component of Waistline's own. Backup and restore are handled by the import and export functionality the README lists, which means the backup is a file the user controls and must move themselves. cordova-plugin-chooser and cordova-plugin-file support that path, and the file plugin carries an explicit AndroidX WebKit version pin of 1.4.0 in the project's plugin configuration. The consequence is concrete rather than abstract: restoring onto a new phone means producing a backup file first and transferring it across, and the app cannot reconcile two devices automatically or merge conflicting entries. Anyone treating the diary as a long term record needs to run an export before changing device or wiping storage. The privacy policy adds the usual caveat that no method of transmission over the internet or electronic storage is completely secure, and the developer does not guarantee absolute security of that data.
Cordova's plugin list is the honest feature list
Because this is a Cordova application, the accurate description of what the app can do lives in package.json rather than in prose. The devDependencies name cordova-plugin-camera for product photos, cordova-plugin-crop for trimming them, cordova-plugin-tts-advanced for speech output, cordova-plugin-ionic-keyboard, cordova-plugin-device, cordova-plugin-x-socialsharing for sharing, and cordova-plugin-browsersync-gen2 for live reload while developing. The cordova section of the same file pins an AndroidX core version of 1.6.+ for the camera plugin and an Android support library version of 27.+ for the barcode scanner, alongside the WebKit pin for the file plugin. Two entries deserve more than a glance. cordova-plugin-ionic-keyboard is fixed at an exact version, 2.2.0, rather than a range, so it will not float forward with other dependencies. cordova-plugin-crop is not pulled from a package registry at all but from a GitHub fork, which means anyone building from source depends on that single fork remaining reachable. A dependency graph is not documentation, but in a Cordova project it is the closest thing to one.
What Waistline does not do: accounts, sync, ads
Three absences define the scope. There is no account, so no shared family diary and no progress tracking through a web dashboard. There is no cloud sync, so the diary lives on one device at a time. There are no ads or in-app purchases, which is a genuine gain for a nutrition app but leaves no paid tier for extra features. If your routine depends on a second screen or a trainer reviewing your log, Waistline is the wrong shape of tool. The same applies if you need micronutrient analysis or a structured restrictive diet programme, since the feature list in the README covers calorie counting, a food list and a diary, and does not describe those. Two smaller caveats. The developer states that Waistline is developed in good faith for general use and will not be liable for losses or damages connected with using it, so treat the numbers as guidance rather than as anything you would defend medically. And a French food database based on ANSES-CIQUAL open data lives in a separate waistline-ciqual repository, which tells you where a curated national database is worth expecting.
Recent releases and what a GPLv3 build asks of you
The last push was on 2026-10-16. The release list shows 3.11.1 on 2026-08-15, 3.11.0 on 2026-08-15, and 3.10.1 on 2026-02-23. Two versions published on the same afternoon, separated from the previous one by several months, reads as a burst pattern rather than a fixed cadence, and the README sets out no release policy, so there is nothing to promise about the next version. On licensing, the project is licensed under the GNU GPLv3. The full license file sits in the www sub-folder and the license notice is placed at the top of every source file, while the folders outside www are generated by the Cordova framework and carry their own GPL compatible license files. That split keeps the hand written application code clearly under GPLv3 while the generated scaffolding stays attributable to its own authors. The practical implication for anyone shipping a build or a fork is a copyleft obligation: modified versions carry the same license, and keeping the notice headers in place matters for anyone reading the source. This is not legal advice, but it is the reason the layout of the repository looks the way it does.
Editorial conclusion
Adopt Waistline if you want an ad free, account free Android calorie tracker with a food database you control, and you are willing to export a backup yourself before changing phones. Skip it if you need cloud sync, a shared family account or a desktop companion. Before installing, scan a few of the products you actually buy and confirm that Open Food Facts returns usable entries for them, since barcode lookup depends on a database maintained by other people.
Frequently asked questions
Does Waistline need an account or an internet connection to log food?
No account is required at all. The app needs a connection only when a barcode is scanned, when searching for a product online, or when uploading a product to Open Food Facts; manual food entry and the diary work without a network.
Where does Waistline get nutrition data for a scanned barcode?
It queries Open Food Facts and the USDA food database. The privacy policy states that during a scan or a search the only information sent is the product barcode or the search terms you entered.
Is Waistline free of ads and in-app purchases?
Yes. The README states that Waistline contains no ads or in-app purchases, and the app is distributed as free and open source software under the GNU GPLv3.
Can I back up my Waistline data when I change phone?
Waistline offers import and export functionality to back up and restore app data, so you can move a file between devices yourself. The README does not document any automatic cloud backup, scheduled export, or account based sync.
Which Android versions does Waistline run on?
The README states that Waistline works on Android devices 5.0 and later, and might work on older devices. A browser platform is also configured in the Cordova configuration, which helps during development on a desktop.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/davidhealey-waistline)Was this useful?