* feat(frontend): ✨ add back support for assets
* feat(backend): ✨ add back support for assets
* feat(frontend): ✨ add support for recipe tools
* feat(backend): ✨ add support for recipe tools
* feat(frontend): ✨ add onHand support for recipe toosl
* feat(backend): ✨ add onHand support for backend
* refactor(frontend): ♻️ move items to recipe folder and break apart types
* feat(frontend): ✨ add support for recipe comments
* feat(backend): ✨ Add support for recipe comments
* fix(backend): 💥 disable comments import
* fix(frontend): 🐛 fix rendering issue with titles when moving steps
* add tools to changelog
* fix type errors
Co-authored-by: hay-kot <hay-kot@pm.me>
* fix UI column width
* words
* update parser to support diff strats
* add new model url
* make button more visible
* fix nutrition error
* feat(backend): ✨ add 'brute' strategy for parsing ingredients
* satisfy linter
* update UI for creation page
* feat(backend): ✨ log 422 errors in detail when not in PRODUCTION
* add strategy selector
Co-authored-by: Hayden <hay-kot@pm.me>
* add universal toast plugin
* add server side locales
* integrate CRF++ into CI/CD Pipeline
* docs(docs): 📝 add recipe parser docs
* feat(backend): ✨ Continued work on ingredient parsers
* add new model dest
* feat(frontend): ✨ New ingredient parser page
* formatting
Co-authored-by: Hayden <hay-kot@pm.me>
* count responses
* perf(backend): ⚡ remove validation on recipe summary response
use the construct() method from pydantic to reduce get time as well as optimize the SQL query for recipes
* update UI to support new categories/tags
* fix(backend): 🐛 restrict recipes by group
Co-authored-by: Hayden <hay-kot@pm.me>
* chore(backend): 🎨 add isort path to vscode settings
* style(frontend): 💄 remove fab and add general create button
* feat(backend): 🚧 stub out new exporter service
* comment out stub tests
Co-authored-by: Hayden <hay-kot@pm.me>
* refactor(backend): ♻️ cleanup duplicate code in http services
* refactor(backend): ♻️ refactor database away from singleton design
removed the database single and instead injected the session into a new Database class that is created during each request life-cycle. Now sessions no longer need to be passed into each method on the database
All tests pass, but there are likely some hidden breaking changes that were not discovered.
* fix venv
* disable venv cache
* fix install script
* bump poetry version
* postgres fixes
* revert install
* fix db initialization for postgres
* add postgres to docker
* refactor(backend): ♻️ cleanup unused and duplicate code in http services
* refactor(backend): remove sessions from arguments
* refactor(backend): ♻️ convert units and ingredients to use http service class
* test(backend): ✅ add unit and food tests
* lint
* update tags
* re-enable cache
* fix missing fraction in db
* fix lint
Co-authored-by: hay-kot <hay-kot@pm.me>
* feat(backend): ✨ new meal-planner feature
* feat(frontend): ✨ new meal plan feature
* refactor(backend): ♻️ refactor base services classes and add mixins for crud
* feat(frontend): ✨ add UI/API for mealplanner
* feat(backend): ✨ add get_today and get_slice options for mealplanner
* test(backend): ✅ add and update group mealplanner tests
* fix(backend): 🐛 Fix recipe_id column type for PG
Co-authored-by: hay-kot <hay-kot@pm.me>
* refactor(backend): ♻️ Refactor base class to be abstract and create a router factory method
* feat(frontend): ✨ add group edit
* refactor(backend): ✨ add group edit support
Co-authored-by: hay-kot <hay-kot@pm.me>
* Enhance security and safety around user update API
- Prevent a regular user from promoting themself to admin
- Prevent an admin from demoting themself
- Refactor token fixture to admin + regular user tokens
* Restrict user CRUD API to admins
* Secure admin API routes
* Refactor APIrouter into Admin/UserAPIRouter
* Secure theme routes
* Make 'all recipes' routes public
* Secure favorite routes
* Remove redundant checks
* Fix public routes mistakenly flagged user routes
* Make webhooks changeable only by admin
* Allow users to create categories and tags
* Address lint issues
* lazy load cards
* shopping list recipe search bug
* admin layout fluid
* site loader
* username support
* mobile tabs
* set username at signup
* update user tests
* patch bug on shopping list
* public mealplan links
* support link (I'm a monster)
* icon only on mobile
* padding
Co-authored-by: hay-kot <hay-kot@pm.me>
* format with black
* black format
* flake8
* remove bar exceptions
* remove test for depreciated route
* recipe settings editr
* add sqlite
Co-authored-by: hay-kot <hay-kot@pm.me>
* Translate missing items on About page
* Localize import summary dialog
* Make site menu translation reactive
* Localize import options
* Include semi colon in string
* Move API texts to frontend + better status codes
* Provide feedback to user when no meal is planned
* Fix API tests after latest rework
* Add warning for API changes in changelog
* Refactor API texts handling
* Refactor API texts handling #2
* Better API feedback
* Rearrange strings hierarchy
* Add messages upon recipe updated
* Fix 'recipe effected' typo
* Remove snackbar usage in backend
* Translate toolbox
* Provide feedback for tags CRUD
* Fix messed up merge
* Translate sign-up form
* Better feedback for sign-up CRUD
* Refactor log-in API texts handling
* No error message when user is not authenticated
* Remove unimportant console log
* formatting
* snake case all recipes entries
* set foreign key to int
* run scheduler at startup and not import
* set SQLite file path before imports
Co-authored-by: hay-kot <hay-kot@pm.me>
* update tag route
* search.and
* offset for mobile
* relative imports
* get settings
* new page
* category/tag CRUD
* bulk assign frontend
* Bulk assign
* debounce search
* remove dev data
* recipe store refactor
* fix mobile view
* fix failing tests
* commit test data
Co-authored-by: hay-kot <hay-kot@pm.me>