A simple, elegant web application for tracking daily calorie intake with rolling averages. Built as a collaborative learning project by the 508.dev software engineering co-op.
Track your daily calorie intake and view intelligent rolling averages (3-day, 5-day, 2-week, and monthly) that help smooth out daily fluctuations. Perfect for flexible calorie management without strict daily limits.
Example: If you consumed 1000, 1000, and 2000 calories over the last 3 days, your 3-day average would be 1333 calories/day. This approach allows for natural variation - like enjoying a holiday meal while maintaining overall balance.
- 📅 Interactive Calendar View - Visual month-at-a-glance with calorie data
- 🎛️ Date Picker Integration - Quick navigation to any date
- 📊 Multiple Rolling Averages - 3-day, 5-day, 2-week, and monthly views
- 📱 Mobile-Friendly - Swipe gestures for date navigation
- 💾 Local Storage - Your data stays private on your device
- 🔄 Data Import/Export - Backup and restore your calorie history
- 🎨 Clean UI - Modern, intuitive interface built with SvelteKit
Try it now: https://508-dev.github.io/running-calorie-average/
This is an open-source collaborative project by the 508.dev software engineering co-op.
- Perfect first contribution for learning our workflow
- Test new ideas and technologies
- Real-world experience with code reviews, issue management, and team development
- Create something useful while learning together
This project is actively evolving and we're looking for contributors! Whether you're a seasoned developer or just starting out, there's a place for you here. Who knows where this project will go - maybe it becomes the go-to calorie tracking app, maybe it evolves into something completely different. That's the beauty of open-source collaboration!
- Beginners: Start with documentation, bug fixes, or small features
- Intermediate: Add new features, improve UI/UX, or optimize performance
- Advanced: Architect new systems, mentor others, or lead feature development
Tech Stack: SvelteKit, TypeScript, Vite, CSS3
We welcome contributions from developers of all skill levels! Here's how to get involved:
- 📝 Improve documentation or add code comments
- 🐛 Fix small bugs or UI inconsistencies
- 🎨 Enhance styling and user experience
- ✅ Add unit tests for existing functions
- 🌐 Improve accessibility features
- 🔐 User authentication and cloud sync
- 📈 Advanced analytics and charts
- 🎯 Goal setting and achievement tracking
- 📱 Progressive Web App (PWA) features
- 🔗 Integration with fitness apps/devices
- 🍎 Food database integration
- 📤 More export formats (CSV, JSON, etc.)
- Fork & Clone the repository
- Create a branch for your feature:
git checkout -b feature/amazing-feature
- Install dependencies:
npm install
- Start development:
npm run dev
- Make your changes and test thoroughly
- Run checks:
npm run lint
andnpm run check
- Submit a Pull Request with a clear description
Prerequisites: Node.js 16+ and npm
# Clone the repository
git clone https://github.com/508-dev/running-calorie-average.git
cd running-calorie-average
# Install dependencies
npm install
# Start development server
npm run dev
💡 Tip: If
npm install
fails, try deletingpackage-lock.json
andnode_modules
, then runnpm install
again.
Available Scripts:
npm run dev
- Start development servernpm run build
- Build for productionnpm run preview
- Preview production buildnpm run lint
- Run linternpm run check
- Type checking
This app is automatically deployed to GitHub Pages from the main
branch.
Live URL: https://508-dev.github.io/running-calorie-average/
Licensed under AGPL-3.0. You're free to use, modify, and deploy this code for your own purposes.
- Frontend: SvelteKit with TypeScript
- Styling: CSS3 with custom properties
- State Management: Svelte stores
- Storage: Browser localStorage
- Build Tool: Vite
- Deployment: GitHub Pages (static generation)
- 💬 Join discussions in our GitHub Issues
- 🐛 Report bugs with detailed reproduction steps
- 💡 Suggest features - we love creative ideas!
- 📧 Contact the 508.dev team for collaboration opportunities
Ready to contribute? Check out our open issues and jump in! Every contribution, no matter how small, helps make this project better. 🚀