github TandoorRecipes/recipes 2.0.0

latest releases: 2.1.0, 2.0.3, 2.0.2...
one month ago

Tandoor 2 is a complete re-write of Tandoors frontend in Vue 3 using vuetify as a UI library. While the core concepts remain unchanged, everything has been rewritten to be faster, easier to use and better looking.

Generally Tandoor 2

  • is a lot faster by using more efficient JavaScript and better component splitting
  • more stable by using TypeScript and higher quality frontend modules to prevent annoying and undescriptive errors
  • better optimized for mobile and smaller devices by having custom workflows/UI's for certain operations
  • looking better thanks to the extensive component library combined with many custom components
  • easy to use and expand by having a standard framework for the editors of recipes, foods, meal plans and all other models
  • a very strong foundation for future development by creating the framework needed to add new features faster and easier
  • fixes lots of smaller and larger bugs from Tandoor 1

Some of the highlights are

  • AI Recipe import to import text, images and PDF recipes (see docs)
  • A global search to search for and open recipes on every page
  • A new start page to discover recipes and quickly manage meal plans
  • The ability to manually add entries to the shopping list linked with meal plans for better organization/context
  • url bindings to the search and on some other pages, so navigating back and forward feels a lot better
  • Individual pages for all model edit pages to make them linkable
  • Quick edit function for the property editor to make it easier to identify and fix missing properties or conversions
  • Warnings when leaving/closing editors about unsaved changes

General Changes & Contributions

While all the changes are to much to write down here are some more highlights and also a list of contributions that were made in the alpha/beta phase.

  • added autocomplete input to shopping lists
  • added an integrated help system and small help texts on all object types
  • added integrated FDC search and import features in both the Food Editor and the Property Editor
  • added ability to create shopping categories from shopping line item dialog
  • added Ctrl+S Hotkey to all Editors
  • added supermarket quick selection to shopping list
  • added the ability to set static root dir via .env (thanks to wilmardo #3637)
  • improved Ingredient and Step sorting in the recipe editor
  • improved settings parsing (thanks to fliiiix #3161)
  • improved cookbookapp importer (thanks to caffeinated-tech #3815)
  • improved Tandoor 2 editor title bar (thanks to SlickMoose #3822)
  • improved timer finished time rendering (thanks to mkieledunsche #3778)
  • improved cookbookapp importer (thanks to caffeinated-tech #3815)
  • fixed home assistant connector not working in some cases (thanks to @mikhail5555 #3724)
  • fixed edge case where file metadata was not stripped form images
  • fixed never unit automation not working #3819

🌐 API Changes

  • added API endpoint for all missing models that previously did not have an API (storages, connectors, ...)
  • added improved ical endpoint on meal plan api (thanks to c0mputerguru #3038)
  • changed revisited all API endpoints and added universal pagination, schemas and test/documentation improvements (thanks to @smilerz #3068 #3123 #3126 #3143)
  • changed renamed API endpoints food-property and food-property-type to property and property-type (thanks to @smilerz #3131)
  • changed API endpoints /space/
    • /space/ now returns all spaces a user has access to
    • /space/current/ returns the currently active space info
    • created_by no returned as object not user id
  • changed Recipe API endpoint to use default formats instead of prefixed ones to indicate >= or <=
    • affected parameters: rating, timescooked, createdon, updatedon, cookedon, viewedon
  • changed last_autosync parameter of ShoppingListEntry endpoint is now updated_after
  • changed ingredient from string api to return food and unit as objects and create them if not present
  • removed old log_cooking, plan-ical and backup API endpoints (thanks to @smilerz #3123)
  • removed some special/duplicate parameters from ShoppingListEntry endpoint
  • various other smaller changes and additions to filters and response fields

â„šī¸ Compatibility Note

This release of Tandoor 2 does not have any changes to the database. This means it is possible to switch between Tandoor 1 (docker tag tandoor-1) and Tandoor 2 freely at any point. This will likely stay this way until Version 2 is stable.

There are some minor incompatibilities to note:

  • loading a Tandoor 1 saved search filter and saving it in Tandoor 2 to then again load and use it in Tandoor 1 might lead to unexpected results. If the filter is just used in Tandoor 2 but not saved nothing changes.
  • Tandoor now has an integrated nginx service you can switch to, more information can be found here: #3851
  • API Changes mentioned above
  • There are no longer docker images for arm/v7 at this point. It is simply too much work for me to maintain a working build for this platform at the moment. This might change in the future and you are still free to build your own image.

â¤ī¸ Support Tandoor

The development of Tandoor 2 started in January of 2024. Since then hundreds if not thousands of hours of work have been put into building the foundation for Tandoors future. Besides some small contributions this has exclusively been done by myself in my spare time.

It is always hard for me to divide my time between my job that keeps the lights on, my family, serving as a voluntary firefighter and Tandoor, but the countless heart-warming stories of people using Tandoor have always motivated me to continue this project. If you want to help in supporting this undertaking consider sponsoring this project.

Don't miss a new recipes release

NewReleases is sending notifications on new releases.