Commit Graph

69 Commits

Author SHA1 Message Date
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 4c0411a7f2 feat: enhance RecipeDetailClient with portion section and instructions styling 2026-04-17 19:05:09 +02:00
Nils-Johan Gynther 8d1584cdb8 feat: add API routes for GET, PATCH, and DELETE operations on recipes 2026-04-17 19:01:09 +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 8a86b0aebd refactor: remove unused inputStyle and clean up EditProductForm component 2026-04-17 18:25:10 +02:00
Nils-Johan Gynther a4ea9be7a1 feat: enhance product model with subcategory, brand, tags, and nutrition; update related DTOs and services 2026-04-17 18:11:06 +02:00
Nils-Johan Gynther 4474c4da01 feat: implement import functionality with tab navigation for receipts and invoices 2026-04-16 21:39:23 +02:00
Nils-Johan Gynther 2a0da005ff feat: add receiptName field to InventoryItem model and update related DTOs and service 2026-04-16 21:22:34 +02:00
Nils-Johan Gynther af88a0dc81 feat: implement receipt alias functionality with CRUD operations and integrate with receipt import 2026-04-16 21:06:16 +02:00
Nils-Johan Gynther b8744f625b feat: enhance receipt import to support PDF files with updated UI and backend processing 2026-04-16 20:22:27 +02:00
Nils-Johan Gynther a12abe0402 feat: add receipt import functionality with UI and backend integration 2026-04-16 20:02:57 +02:00
Nils-Johan Gynther 88d3c4ad73 fix: correct import paths in MealPlanPage component 2026-04-16 19:38:25 +02:00
Nils-Johan Gynther 1b82b02021 feat: implement meal planning feature with CRUD operations and UI integration 2026-04-16 19:37:09 +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 1b9df4d20d feat: add API route for serving images with path validation 2026-04-16 19:10:06 +02:00
Nils-Johan Gynther 66003f2485 feat: enhance PantryList and BaslagerPage to support inventory display and improve recipe grid layout 2026-04-16 18:44:44 +02:00
Nils-Johan Gynther 1ddce5f48c feat: initialize state for image URL in WriteRecipePage component 2026-04-16 18:26:09 +02:00
Nils-Johan Gynther 195d1ddbc6 feat: add support for prefilled image URL in recipe creation and display 2026-04-16 18:24:44 +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 940c8b52ee fix: saknad POST /api/recipes proxy och revalidatePath for admin/products 2026-04-15 22:11:57 +02:00
Nils-Johan Gynther 47d1aafd9e feat: PantryItem (Baslager) - tabell, backend-modul och frontend-sida 2026-04-15 22:06:40 +02:00
Nils-Johan Gynther 65ec74ac7d feat: redigeringsformulär för produkter i admin med namn, canonical name, kategori och mjukradering 2026-04-15 22:02:58 +02:00
Nils-Johan Gynther ed732ea4e6 fix: använd NEXT_PUBLIC_API_URL_INTERNAL i quick-import-proxy 2026-04-15 21:25:20 +02:00
Nils-Johan Gynther 3bfd7640cb fix: remove global npm installation from Dockerfiles 2026-04-15 21:08:07 +02:00
Nils-Johan Gynther 67aa89ba7e chore: add npm install command in Dockerfiles for both backend and frontend 2026-04-15 21:05:22 +02:00
Nils-Johan Gynther 8efd9f6e1e fix: update parameter type in POST function to use Promise for id 2026-04-15 19:53:15 +02:00
Nils-Johan Gynther c20391bf2a refactor: simplify EditRecipeRedirect component by removing unused code 2026-04-15 19:51:51 +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 a118a2ff11 chore: Update Dockerfile paths and add .dockerignore files for backend and frontend 2026-04-14 22:35:10 +02:00
Nils-Johan Gynther 1ce1318bf5 feat: Implement PDF recipe parser and quick import service for file and URL inputs 2026-04-14 22:24:28 +02:00
Nils-Johan Gynther 8fe9a7a4d2 fix: Adjust grid layout for review step to maintain consistent column structure 2026-04-12 11:12:45 +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 9ca7fcce96 feat: Add optional note field to ingredient parsing and update related components 2026-04-12 10:30:05 +02:00
Nils-Johan Gynther 03727ee3c5 feat: Implement auto-parsing of markdown in WriteRecipePage with error handling 2026-04-12 10:06:51 +02:00
Nils-Johan Gynther 2c92e07d39 fix: Update backend URL in QuickImportProxy to use the correct API endpoint 2026-04-12 09:29:15 +02:00
Nils-Johan Gynther 4d3873c9e4 refactor: Clean up and standardize JSX structure in MergePreviewForm component 2026-04-12 09:08:24 +02:00
Nils-Johan Gynther a76fc5ecc5 fix: Correct structure of expandable section in MergePreviewForm component 2026-04-12 09:01:42 +02:00
Nils-Johan Gynther c814fbdddf refactor: Enhance logging in QuickImportProxy for better debugging 2026-04-12 08:48:27 +02:00
Nils-Johan Gynther ea307e6a6c feat: Add expandable section for creating products with integrated product form 2026-04-12 08:29:28 +02:00
Nils-Johan Gynther 4f183df711 feat: Implement quick import feature for recipes
- Added QuickImportController and QuickImportService to handle recipe imports from URLs and file paths.
- Created QuickImportModule to encapsulate the quick import functionality.
- Developed frontend ImportFilePage for users to upload files or enter URLs for recipe import.
- Integrated API proxy to communicate with the backend for quick import requests.
- Implemented WriteRecipePage for users to manually input recipes with Markdown support.
- Added page routing for the new import and write recipe functionalities.
2026-04-12 07:41:18 +02:00
Nils-Johan Gynther 4ea55012bb feat: add import recipes link to navigation 2026-04-11 17:52:48 +02:00
Nils-Johan Gynther 5c5177432d refactor: update Dockerfile stages for improved build process and add converter dependency 2026-04-11 17:43:34 +02:00
Nils-Johan Gynther 5448da1b98 New import in version 0.1 2026-04-11 15:38:24 +02:00
nilsjohan 2d808c47a4 Lade till node_modules i .gitignore 2026-04-11 14:54:08 +02:00
Nils-Johan Gynther 8fce96e1ce Add Navigation component and integrate it into multiple pages for consistent navigation 2026-04-10 20:03:43 +02:00
Nils-Johan Gynther bc2480b3cb Enhance form styling and add Markdown help toggle in recipe creation and editing pages. Enhance form and styling on other pages aswell. 2026-04-10 19:56:49 +02:00
Nils-Johan Gynther 34d10eb93f Add Markdown support and preview functionality in recipe creation and editing pages 2026-04-10 19:40:41 +02:00
Nils-Johan Gynther 8e9ab3d113 Add recipe instructions display and missing ingredients alert in RecipePreview component 2026-04-10 19:20:51 +02:00
Nils-Johan Gynther 556a0fdc30 Add sorting by name functionality and implement AdminProductList component for product management 2026-04-10 19:10:50 +02:00