https://github.com/peaktwilight/protein
🇨🇠Free protein tracker for Switzerland - Find the cheapest protein at Migros, Coop, Lidl & Aldi. No powder, just real food on a budget!
https://github.com/peaktwilight/protein
aldi bodybuilding coop fitness gym lidl migros nutrition protein-tracker react student-budget swiss-food switzerland vite zurich
Last synced: about 1 month ago
JSON representation
🇨🇠Free protein tracker for Switzerland - Find the cheapest protein at Migros, Coop, Lidl & Aldi. No powder, just real food on a budget!
- Host: GitHub
- URL: https://github.com/peaktwilight/protein
- Owner: peaktwilight
- Created: 2025-09-05T21:23:44.000Z (9 months ago)
- Default Branch: main
- Last Pushed: 2026-03-01T17:18:24.000Z (3 months ago)
- Last Synced: 2026-03-01T19:41:43.615Z (3 months ago)
- Topics: aldi, bodybuilding, coop, fitness, gym, lidl, migros, nutrition, protein-tracker, react, student-budget, swiss-food, switzerland, vite, zurich
- Language: JavaScript
- Homepage: https://protein.doruk.ch
- Size: 108 KB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Protein Tracker
**Track every high-protein product at your local stores so you don't have to guess.**
Compare protein per dollar/euro/franc, taste ratings, and calories — all in one place. No signup, no ads, no backend. Your data stays on your device.
[**Try it live**](https://protein.doruk.ch) | [Report Bug](https://github.com/peaktwilight/protein/issues) | [Request Feature](https://github.com/peaktwilight/protein/issues)

---
## Why this exists
I'm a student trying to hit 140g protein daily without protein powder and on a budget. I got tired of checking every product at the store, so I built this for myself. Now it's free for everyone.
## Features
- **Smart scoring** — Products ranked by protein-per-price, taste, and calorie efficiency
- **Daily tracker** — Set your protein goal and log what you eat throughout the day
- **Works with any store** — Comes with sample data from Swiss stores, but add products from anywhere
- **Import/Export** — Share your product lists with friends or back them up as JSON
- **Mobile-first** — Designed for checking prices while you're at the store
- **100% local** — No account needed, all data saved in your browser
- **Open source** — MIT licensed, fork it, modify it, make it yours
## Quick start
```bash
git clone https://github.com/peaktwilight/protein.git
cd protein
npm install
npm run dev
```
## How scoring works
Each product gets a score based on:
| Factor | Weight | Why |
|--------|--------|-----|
| Protein per price | High | More protein per dollar = better value |
| Taste rating | Medium | No point eating something you hate |
| Calories per 100g | Negative | Penalizes calorie-dense options |
**Formula:** `(protein/price * 10) + (taste * 3) - (calories_per_100g * 0.1)`
## Sample data
The app comes with 28 pre-loaded products from Swiss supermarkets (Migros, Coop, Lidl, Aldi). You can start with this data or begin fresh with your own products.
Want to contribute products from your country? See [CONTRIBUTING.md](CONTRIBUTING.md).
## Tech stack
- React 18 + Vite
- Tailwind CSS
- Zustand (state management)
- Local Storage (persistence)
- Zero backend, zero dependencies on external services
## Contributing
We'd love contributions — especially product data from different countries! See [CONTRIBUTING.md](CONTRIBUTING.md) for details.
## License
[MIT](LICENSE) — use it however you want.
---
Built by [Doruk](https://doruk.ch) — a student who just wanted cheap protein.