Skip to content

Comments

feat: add diet planner with calorie estimation and local persistence#6739

Open
darshanrathod05 wants to merge 2 commits intomealie-recipes:mealie-nextfrom
darshanrathod05:feature/diet-planner-v2
Open

feat: add diet planner with calorie estimation and local persistence#6739
darshanrathod05 wants to merge 2 commits intomealie-recipes:mealie-nextfrom
darshanrathod05:feature/diet-planner-v2

Conversation

@darshanrathod05
Copy link

Summary

This PR introduces a new Diet Planner feature that allows users to plan weekly meals, estimate calorie intake, and receive personalized health suggestions based on their goals.

Key Features

  • Weekly meal planning (breakfast, lunch, dinner)
  • Automatic calorie estimation based on recipe ingredients
  • Personalized daily calorie targets using BMR + activity level
  • Goal-based insights (lose / maintain / gain)
  • Health suggestions based on weekly patterns
  • Persistent state using browser localStorage (no backend or DB changes)

Technical Details

  • Implemented as a client-side feature using Vue 3 + Nuxt
  • Uses existing recipe APIs to fetch and cache full recipe data
  • Persists user metrics and weekly plans via localStorage
  • No schema migrations or backend changes required

UX Considerations

  • Data remains intact on page refresh
  • Lightweight and non-invasive to existing flows
  • Safe client-only persistence (no sensitive data stored)

Notes

This implementation is intentionally frontend-only to keep the feature lightweight and avoid introducing database or API-breaking changes. Backend integration can be added in a future iteration if desired.

Copy link
Collaborator

@michael-genson michael-genson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like the idea of this, but I'm not sure if we want to add a dedicated page for it as opposed to just building it into the meal planner. It seems to be doing similar work (e.g. aggregating recipes by day). Any ideas on how we could incorporate it there instead?

I'd also like to see it where it either doesn't allow you to choose recipes without nutritional data, or at least throws a warning that data is incomplete.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants