Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[2025.12.29] - 2025-12-29

Added

  • Added a new GET /api/v1/recipes route.
  • Added a new GET /api/v1/recipes/:id route.
  • Added a new POST /api/v1/recipes route.
  • Added a new POST /api/v1/recipes/:id route.
  • Added a new DELETE /api/v1/recipes/:id route.

Fixed

  • BREAKING: GET /api/v1/menus is now paginated.
  • Fixed a bug where the days where out of order when the week contained the new year.

[2025.12.1] - 2025-12-01

Fixed

  • API calls now accept authorization headers where the 'bearer' can have any casing.

Added

  • Users can now create, view, edit, and delete recipes.
  • Added a reset button above the calendar that sends the user back to the current week.

[2025.10.22] - 2025-10-22

Added

  • Users can now see a list of their API keys in user settings.
  • Users can now delete API keys.

[2025.10.19] - 2025-10-19

Added

  • Upgraded to OTP 27 and Elixir 1.18.

[2025.10.17] - 2025-10-17

Fixed

  • Version is now properly displayed in the footer.

Added

  • Selecting a searched meal now takes you to the calendar view containing it.

[2025.10.14-1] - 2025-10-14

Fixed

  • Users can no longer search meals they do not own.
  • Users can no longer see an edit button when searching for meals they only have invitation access to.

[2025.10.14] - 2025-10-14

Added

  • Upgraded postgres to 17.6.
  • Added the ability to search meals while viewing menus.

Fixed

  • Moved from Kiniko to buildkit as Google has pulled support for anything open web.

[2025.9.26] - 2025-09-26

Added

  • It is now possible to clone meals (within a single menu).

[2025.9.17-1] - 2025-09-17

Fixed

  • Move back to Sendgrid to send emails.

[2025.9.17] - 2025-09-17

Added

  • Added LiveDebugger to make local debugging easier.
  • Added the ability for users to create API Keys, for use with the new rest API.
  • Added a new GET /api/v1/menus route, the start of a new REST API.
  • Added swagger based API docs for the rest API.

Fixed

  • Updated meals are now removed from the calendar display if the new take is out of the calendar's date range.
  • Moved from sendgrid to proton via SMTP.
  • Log email delivery errors.
  • All metadata is now logged properly in production builds.

[2025.4.16] - 2025-04-16

Added

  • Users can now be removed from menus, provided that the removing user owns the menu and is not removing themselves.

Fixed

  • When meals have their dates changed, the old date card no longer remains displayed.
  • Item lines with multiple values now have line breaks (when the line exceeds the card width).
  • Users that are not owners can no longer access menu settings.
  • It is now possible to invite users that are not yet registered. These invitations will convert to menu links when the user registers.

Removed

  • Removed titles from meal.

[2025.3.21] - 2025-03-21

Added

  • Add the ability to (soft) delete meals and menus.
  • Emails are now sent when a user is invited to a menu.
  • Users can now define their own meal 'kinds' (formally breakfast, lunch, and dinner were hard-coded).
  • Users can now edit menu names and kinds in settings.

Fixed

  • Ensured that events that could alter a menu were authorized.

[2025.3.12] - 2025-03-12

Added

  • Added version to the footer.
  • This changelog is now displayed within the website.
  • Users can now accept or decline invitations, and when merely invited users can no longer create meals or edit or create settings.

Fixed

  • When building the calendar view, a local timezone is now used.
  • The back icon going from the meals view to the menu view now represents a list, instead of a back arrow, to make the UX clearer.

[2025.3.9] - 2025-03-09

Fixed

  • When all items are removed from a meal the meal is now properly updated.

[2025.3.7-1] - 2025-03-07

Fixed

  • Text that overflows within the meal display (day_card) are now truncated.
  • The meal display (day_card) now displays meal titles, if they exist.
  • Meals can now be saved with no items.

[2025.3.7] - 2025-03-07

Fixed

  • sort_kind/2 no longer breaks on :lunch/:dinner combinations.

[2025.3.5] - 2025-03-05

Added

  • Dependencies are now audited for security vulnerabilities.
  • Added Sobelow for security analysis.

Fixed

  • Start and End datetime have been replaced by date and kind (breakfast, lunch, etc.) fields. This should lead to an easier editing/reading experience.
  • Made meal title optional (kind-date should be sufficient in most cases).
  • Meals are now displayed in a week based calendar.
  • When the user clicks on 'new meal' after first clicking on an existing meal, it correctly displays an empty form.

[2025.2.23-3] - 2025-02-23

Added

  • Traces are now tagged with the env.

[2025.2.23-2] - 2025-02-23

Fixed

  • Fixed the versioning of the prod image.

[2025.2.23-1] - 2025-02-23

Fixed

  • Fixed the pull-version release job.

[2025.2.23] - 2025-02-23

Added

  • Added a ci pipeline for MR quality control, as well as linting, test coverage, a new test image, and doctest formatting.
  • Added the ability to create and view menus.
  • Added the ability to create and view meals within menus.
  • Added basic user accounts and linked them to menus.
  • Added the ability to invite other users to menus.
  • Added a (very) basic landing page.
  • Added copywrite statement.
  • Added docker based release.
  • Added production email client (sendgrid).
  • Added support for traces and metrics.
  • Added structured logging for prod.
  • Added simple Release Pipeline.

Removed

  • Removed the default phoenix branding.

[0.1.0] - 2025-01-08

  • init