Mealie logo

Mealie

Self-hosted recipe manager, meal planner, and shopping list

Alternative to: paprika, mealime, plan to eat

Mealie screenshot

About Versions (96)

v3.12.0

2026-03-07

🍴🍴🍴🍴🍴🍴

🎉 Highlights

This PR includes a major optimization for the healthcheck script (thanks @michelezoncheddu!). You should see substantially less resource usage, more in line with what you’d expect from a healthcheck.

✨ New features

  • feat: Auto-adjust shopping list item autofocus @michael-genson (#7096)
  • feat: Improve auto-form layout @michael-genson (#7150)
  • feat: include extra ingredients + amounts in NLP parser output @michael-genson (#7191)
  • feat: replace python script with curl @michelezoncheddu (#7192)

🐛 Bug fixes

  • fix: Include unmade recipes when filtering by last made @michael-genson (#7130)
  • fix: Ensure recipe ingredients have a valid reference_id @michael-genson (#7139)
  • fix(deps): update dependency fastapi to v0.133.1 @michael-genson (#7146)
  • fix: data management food edit / create @Kuchenpirat (#7148)
  • fix: Updated get_ts_locales to resolve issues with Automatic Locale Sync workflow @Choromanski (#7181)
  • fix: Logic to unset-rating when currentrating is selected @Choromanski (#7182)
  • fix: Restore missing description for household’s new recipe settings @michael-genson (#7204)
  • fix: Added mealie.log rotations to excluded files for backup @Choromanski (#7138)

🧰 Maintenance

28 changes
  • chore(l10n): New Crowdin updates @hay-kot (#7088)
  • chore(l10n): New Crowdin updates @hay-kot (#7098)
  • chore(l10n): New Crowdin updates @hay-kot (#7105)
  • chore(l10n): New Crowdin updates @hay-kot (#7110)
  • chore(l10n): New Crowdin updates @hay-kot (#7112)
  • chore(l10n): New Crowdin updates @hay-kot (#7116)
  • chore(l10n): New Crowdin updates @hay-kot (#7119)
  • chore(auto): Update pre-commit hooks @mealie-actions (#7122)
  • chore(l10n): New Crowdin updates @hay-kot (#7126)
  • chore(l10n): New Crowdin updates @hay-kot (#7131)
  • chore: refactor data management pages @Kuchenpirat (#7107)
  • chore(l10n): New Crowdin updates @hay-kot (#7136)
  • chore(l10n): New Crowdin updates @hay-kot (#7145)
  • chore(l10n): New Crowdin updates @hay-kot (#7149)
  • chore(l10n): New Crowdin updates @hay-kot (#7153)
  • chore(l10n): New Crowdin updates @hay-kot (#7157)
  • chore(l10n): New Crowdin updates @hay-kot (#7160)
  • chore(l10n): New Crowdin updates @hay-kot (#7166)
  • chore(auto): Update pre-commit hooks @mealie-actions (#7168)
  • chore(l10n): New Crowdin updates @hay-kot (#7174)
  • chore(l10n): New Crowdin updates @hay-kot (#7180)
  • chore(l10n): Crowdin locale sync @mealie-actions (#7183)
  • chore(l10n): New Crowdin updates @hay-kot (#7186)
  • chore(l10n): New Crowdin updates @hay-kot (#7189)
  • chore(l10n): New Crowdin updates @hay-kot (#7194)
  • chore(l10n): New Crowdin updates @hay-kot (#7195)
  • chore(l10n): New Crowdin updates @hay-kot (#7198)
  • chore(l10n): New Crowdin updates @hay-kot (#7202)

📚 Documentation

  • docs: Add missing release tags to OpenAI docs @michael-genson (#7102)
  • docs: Remove redoc API generation @michael-genson (#7109)

🔨 Internal development

  • dev: add AI/LLM Assistance section to PR template @Kuchenpirat (#7144)
  • dev: Add backend translations to auto-approval @michael-genson (#7196)

⬆️ Dependency updates

27 changes
  • chore(deps): update dependency mkdocs-material to v9.7.2 @renovate (#7093)
  • fix(deps): update dependency pillow-heif to v1.2.1 @renovate (#7092)
  • chore(deps): update dependency rich to v14.3.3 @renovate (#7100)
  • fix(deps): update dependency pydantic-settings to v2.13.1 @renovate (#7101)
  • chore(deps): update dependency ruff to v0.15.2 @renovate (#7104)
  • chore(deps): update dependency pylint to v4.0.5 @renovate (#7106)
  • fix(deps): update dependency fastapi to v0.129.1 @renovate (#7111)
  • fix(deps): update dependency fastapi to v0.131.0 @renovate (#7113)
  • fix(deps): update dependency openai to v2.22.0 @renovate (#7128)
  • fix(deps): update dependency openai to v2.23.0 @renovate (#7132)
  • chore(deps): update dependency mkdocs-material to v9.7.3 @renovate (#7134)
  • chore(deps): update node.js to 3a09aa6 @renovate (#7140)
  • fix(deps): update dependency sqlalchemy to v2.0.47 @renovate (#7135)
  • fix(deps): update dependency openai to v2.24.0 @renovate (#7137)
  • chore(deps): update dependency ruff to v0.15.3 @renovate (#7151)
  • chore(deps): update dependency ruff to v0.15.4 @renovate (#7152)
  • fix(deps): update dependency pillow-heif to v1.3.0 @renovate (#7155)
  • fix(deps): update dependency fastapi to v0.134.0 @renovate (#7127)
  • fix(deps): update dependency fastapi to v0.135.1 @renovate (#7165)
  • chore(deps): update dependency types-python-dateutil to v2.9.0.20260302 @renovate (#7169)
  • fix(deps): update dependency authlib to v1.6.9 @renovate (#7170)
  • fix(deps): update dependency python-dotenv to v1.2.2 @renovate (#7164)
  • fix(deps): update dependency sqlalchemy to v2.0.48 @renovate (#7173)
  • chore(deps): update dependency mkdocs-material to v9.7.4 @renovate (#7178)
  • chore(deps): update dependency types-python-dateutil to v2.9.0.20260305 @renovate (#7188)
  • chore(deps): update dependency ruff to v0.15.5 @renovate (#7193)
  • fix(deps): update dependency openai to v2.26.0 @renovate (#7190)

🙏 New Contributors

🍴🍴🍴🍴🍴🍴