Commit Graph

36 Commits

Author SHA1 Message Date
Nils-Johan Gynther 04b1fc3024 feat: add rematch functionality for recipe ingredients and enhance inventory management
Test Suite / test (24.15.0) (push) Has been cancelled
- Added a new API path for rematching recipe ingredients in `api_paths.dart`.
- Implemented a manual product creation dialog in `inventory_screen.dart` to allow users to create new products directly.
- Integrated the rematch functionality in `recipe_repository.dart` to handle rematching of recipe ingredients.
- Updated the recipe detail screen to include a button for triggering the rematch process.
- Introduced a new `RecipeMatchingService` in the backend to handle ingredient matching logic.
- Added database migration to include `aiEngineEnabled` column in the User table.

Co-authored-by: Copilot <copilot@github.com>
2026-05-06 09:20:31 +02:00
Nils-Johan Gynther 9fe85a719c feat: implement recipe analysis service and data models
Test Suite / test (24.15.0) (push) Has been cancelled
- Added RecipeAnalysisService to handle recipe ingredient analysis, including methods for checking ingredient availability and calculating quantities.
- Introduced new TypeScript definitions for recipe analysis results, including ingredient status and summary.
- Created corresponding Dart models for recipe analysis, including RecipeIngredientAnalysis, RecipeAnalysisSummary, and RecipeShoppingCandidate.
- Updated Flutter UI to reflect changes in ingredient availability status.
- Fixed color opacity issue in recipe image card.
2026-05-06 07:54:03 +02:00
Nils-Johan Gynther 969dafdbc6 Refactor code structure for improved readability and maintainability
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-06 07:37:59 +02:00
Nils-Johan Gynther e4f201ea36 feat: enhance recipe ingredient model; add raw fields and optional properties for better ingredient handling
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-06 07:25:42 +02:00
Nils-Johan Gynther ce20b1dd07 feat: implement AI recipe suggestions; add endpoint and UI for generating suggestions based on inventory
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-05 14:15:28 +02:00
Nils-Johan Gynther 3ea5a4778f feat: add functionality to manually add ingredients; implement CreateIngredientDto and update RecipesController and RecipesService
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-05 13:38:23 +02:00
Nils-Johan Gynther 2c8d6b69ae feat: add support for alternative ingredients; implement JSON storage and parsing logic
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 22:06:57 +02:00
Nils-Johan Gynther b52205c8c3 feat: refactor recipe ownership logic; auto-claim ownerless recipes and ensure atomic updates for ingredients
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 21:33:33 +02:00
Nils-Johan Gynther b7c857732c feat: add product validation in recipe update and creation; throw BadRequestException for inactive products
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 21:30:51 +02:00
Nils-Johan Gynther 648e1856a1 feat: refactor recipe parsing logic; move parseRecipeMarkdown and related functions to a new utility file
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 21:28:06 +02:00
Nils-Johan Gynther a645d6a364 feat: refactor inventory and recipe services for improved error handling and code reuse; add systematic backend review plan
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 20:44:43 +02:00
Nils-Johan Gynther 41ae7d4d06 feat(recipes): add recipe visibility and sharing features
- Implemented functionality to set recipe visibility (public/private) with appropriate checks for user permissions.
- Added ability to share recipes with other users, including validation for existing users and permissions.
- Introduced new DTOs for setting visibility and sharing recipes.
- Updated RecipesController and RecipesService to handle new endpoints for visibility and sharing.
- Enhanced inventory preview to consider user permissions and shared recipes.
- Updated front-end to support new sharing and visibility features, including UI changes for recipe detail and admin user management.
2026-05-02 09:19:59 +02:00
Nils-Johan Gynther 797241f262 feat: migrate import functionality to microservice-importer for quick-import, receipt parsing, and markdown parsing 2026-04-30 20:00:32 +02:00
Nils-Johan Gynther 71bc162015 feat(import): enhance image URL extraction and logging during recipe import 2026-04-22 22:08:05 +02:00
Nils-Johan Gynther c8510b431f fix(router): adjust type check for extra parameter in navigation
fix(import): ensure correct typing for passing markdown and imageUrl
fix(recipes): delete local image file on recipe deletion to avoid orphan files
2026-04-22 21:51:16 +02:00
Nils-Johan Gynther 4074b850cb refactor: simplify unit conversion tests by importing utility functions directly 2026-04-21 10:52:49 +02:00
Nils-Johan Gynther 5345b9e55e feat: implement unit conversion utilities and centralize unit definitions for consistency across frontend and backend 2026-04-21 10:51:07 +02:00
Nils-Johan Gynther ce0cc6fbf0 feat(auth): implement user authentication with JWT and NextAuth
- Added user registration and login functionality with JWT authentication.
- Created auth controller, service, and module in the backend.
- Implemented user model and user products management.
- Integrated NextAuth for session management on the frontend.
- Added middleware for protecting routes and handling public access.
- Updated frontend API routes to include authorization headers.
- Enhanced recipe and user product models to support ownership and visibility.
- Created registration and login pages in the frontend.
- Added necessary types for NextAuth session management.
2026-04-17 19:57:08 +02:00
Nils-Johan Gynther 8e0aed032c feat: add servings field to Recipe model and implement inventory comparison functionality 2026-04-17 18:48:08 +02:00
Nils-Johan Gynther 9292e30abc feat: add tests for normalizeName and RecipesService methods, including unit conversion and alias normalization 2026-04-16 19:22:14 +02:00
Nils-Johan Gynther d5b360fd62 Refactor logging in IcaRecipeParser and QuickImportService to use NestJS Logger
- Updated IcaRecipeParser to replace console.log statements with Logger for better logging practices.
- Enhanced QuickImportService with Logger for consistent logging and error handling.
- Changed quantity validation in CreateRecipeIngredientDto and CreateRecipeDto to allow zero.
- Removed CanonicalNameForm and NameForm components from the frontend.
- Updated EditProductForm to use a select dropdown for categories instead of a text input.
- Added validation for product name, canonical name, and category length in product update action.
- Refactored unit options into a separate file for better reusability across components.
- Removed unused API fetching functions and inventory types to clean up the codebase.
2026-04-16 18:18:27 +02:00
Nils-Johan Gynther 73bf5193c4 feat: add image handling to recipes
- Implemented image downloading and optimization in QuickImportService.
- Added imageUrl field to CreateRecipeDto for recipe creation.
- Created an endpoint in RecipesController to update recipe images.
- Enhanced RecipesService to handle image URL updates and optimizations.
- Updated Docker Compose to mount a volume for recipe images.
- Refactored frontend to display images in recipe grids and detail views.
- Added a new utility function for downloading and optimizing images.
- Created a new API route for handling image uploads.
- Introduced RecipeGrid component for better recipe display.
- Updated RecipeDetailClient to manage image updates and display.
- Added migration for new imageUrl column in the Recipe table.
2026-04-15 19:46:50 +02:00
Nils-Johan Gynther b795bbfc71 feat: Update ingredient units and improve layout responsiveness across various components 2026-04-12 11:08:15 +02:00
Nils-Johan Gynther 3d4994f24d feat: Enhance ingredient parsing to support mixed fractions and add description extraction in recipe parsers 2026-04-12 10:50:59 +02:00
Nils-Johan Gynther f84ee39197 refactor: Simplify Dockerfile by removing recipe-document-converter build stage and update package.json to remove its dependency 2026-04-12 08:15:55 +02:00
Nils-Johan Gynther cff299b6e8 Enhance recipe service by importing ParsedIngredient and updating ingredient mapping for type safety 2026-04-11 15:49:26 +02:00
Nils-Johan Gynther 5448da1b98 New import in version 0.1 2026-04-11 15:38:24 +02:00
Nils-Johan Gynther dd17656e4c Add recipe deletion functionality and enhance inventory consumption details 2026-04-10 18:44:06 +02:00
Nils-Johan Gynther 0588c0d3d8 Add recipe existence check in update method and remove redundant quantity conversion 2026-04-10 18:22:47 +02:00
Nils-Johan Gynther a1f8fe228c Add update functionality for recipes and create edit page 2026-04-10 17:45:24 +02:00
Nils-Johan Gynther 898ac2ef19 Add CreateRecipePage component for recipe creation with ingredients. Updated UX 2026-04-09 22:53:52 +02:00
Nils-Johan Gynther 3e38cb5f98 Add create method to RecipesService for recipe creation with ingredients 2026-04-09 22:23:13 +02:00
Nils-Johan Gynther bc89e3038b Implement recipe retrieval methods and enhance inventory item types for better data handling 2026-04-09 22:16:09 +02:00
Nils-Johan Gynther 29910130f0 Enhance RecipePreview and RecipesService with additional inventory item properties and conversion logic 2026-04-09 22:09:19 +02:00
Nils-Johan Gynther 4fd3c8dc20 Add unit conversion and normalization methods to RecipesService 2026-04-09 17:17:08 +02:00
nilsjohan 962f4e4be5 Recipe-app main 2026-04-09 09:14:39 +02:00