Caloriv – Nutrition Tracking
A full-stack nutrition tracking application with BMR/TDEE estimation, calorie logging, and persistent storage — deployed live.
Next.jsTypeScriptSQLiteAzure
Problem
Accurately tracking daily nutrition is harder than it looks. Most tools are either too complex or too shallow. The goal was to build a streamlined, modern web app that handles the math and lets users focus on their health.
Tech Stack
- Frontend: Next.js + React for a fast, SEO-friendly, interactive UI
- Styling: Tailwind CSS for a clean, responsive design
- Language: TypeScript for type safety and maintainability
- Storage: SQLite for lightweight, persistent data storage
- Deployment: Azure Linux VM
Key Features
- BMR/TDEE Calculation: Implements the Mifflin-St Jeor equation to estimate daily caloric needs based on age, weight, height, and activity level.
- Calorie Logging: Users can log meals and track intake against their daily target.
- Persistent Storage: All user data is stored in SQLite, ensuring logs persist across sessions.
Architecture Decisions
- Chose SQLite over a hosted database to keep infrastructure simple and cost-free for a solo project.
- Used Next.js App Router for co-located server and client logic, reducing API boilerplate.
Next Steps
- Integrate a food database API (Edamam or Nutritionix) for real-time macronutrient search.
- Add user authentication and historical progress charts.
