Skip to content

A simple diet app I build for myself to help me with my weight loss

License

Notifications You must be signed in to change notification settings

dmitkov28/diet-app

Repository files navigation

DietApp (WIP)

A minimalist, high-performance diet tracking application built to manage my personal nutrition habits. This project combines modern web technologies with a simple, effective interface for tracking daily food intake and nutritional goals.

Diet Tracker Screenshot 1 Diet Tracker Screenshot 2 Diet Tracker Screenshot 3 Diet Tracker Screenshot 4 Diet Tracker Screenshot 5 Diet Tracker Screenshot 6 Diet Tracker Screenshot 7 Diet Tracker Screenshot 8 Diet Tracker Screenshot 8

Motivation

I built this application to solve my own diet tracking needs, focusing on:

  • Fast, responsive interface with minimal page refreshes
  • Simple data entry that doesn't get in the way
  • Easy deployment and maintenance
  • Learning some Go along the way
  • Spending some time away from bloated JS Frameworks

Features (more coming soon!)

  • Weight Logging

    • Track daily or weekly weight changes to monitor progress.
  • Food Tracking

    • Log food intake by entering meals manually or using a food scanner.
  • Food Search

    • Search for food items using the OpenFoodFacts API to retrieve detailed nutritional information and make data entry easier.
  • Progress Tracking & Reports

    • View detailed stats on weight and nutrition trends over time.

Tech Stack

  • Backend: Go

    • Basic echo web app
  • Frontend: HTMX + Templ

    • HTMX for dynamic content updates
    • Templ for type-safe HTML templates in Go
    • Extremely nice to work with
  • Database: Turso

    • SQLite-compatible distributed database
    • Perfect for applications with moderate data requirements
  • Hosting: AWS

    • Deployed on AWS for reliability and scalability
    • Uses Lambda, API Gateway & Cloudfront
    • CloudWatch for monitoring and logging

License

MIT License - feel free to use this for your own diet tracking needs!