diff --git a/backend/package.json b/backend/package.json index e478ebb4..97d0d13d 100644 --- a/backend/package.json +++ b/backend/package.json @@ -25,11 +25,9 @@ "class-transformer": "^0.5.1", "class-validator": "^0.15.1", "multer": "^1.4.5-lts.2", - "pdf-parse": "^1.1.1", "reflect-metadata": "^0.2.2", "rxjs": "^7.8.1", "sharp": "^0.33.5", - "tesseract.js": "^6.0.1", "uuid": "^11.1.0", "helmet": "^8.0.0", "@nestjs/throttler": "^6.4.0" @@ -43,7 +41,6 @@ "@types/multer": "^1.4.12", "@types/node": "^22.15.29", "@types/passport-jwt": "^4.0.1", - "@types/pdf-parse": "^1.1.5", "@types/uuid": "^10.0.0", "prisma": "6.12.0", "typescript": "^5.4.5", diff --git a/backend/src/quick-import/parsers/README.md b/backend/src/quick-import/parsers/README.md deleted file mode 100644 index 5c7de9c1..00000000 --- a/backend/src/quick-import/parsers/README.md +++ /dev/null @@ -1,57 +0,0 @@ -# Site-Specifika Parsers - -Denna mapp innehåller parsers för olika receptsidor. Varje webbplats kan ha sina egna selectors och datastrukturer. - -## Arkitektur - -- **`base.parser.ts`** – Bas-klass som alla parsers extendar -- **`ica.parser.ts`** – Optimerad parser för ica.se -- **`generic.parser.ts`** – Generisk fallback-parser för okända sidor - -## Så lägger du till en ny parser - -1. Skapa en ny fil, t.ex. `mathem.parser.ts`: - -```typescript -import { RecipeParser, ParsedRecipe } from './base.parser'; - -export class MathemsRecipeParser extends RecipeParser { - canHandle(url: string): boolean { - return /mathem\.se/i.test(url); // Matchar bara mathem.se-URLs - } - - parse(html: string): ParsedRecipe { - // Din site-specifika parsing-logik här - // Returnera { name, ingredients, instructions } - } -} -``` - -2. Registrera parsern i `quick-import.service.ts`: - -```typescript -const parsers: RecipeParser[] = [ - new IcaRecipeParser(), - new MathemsRecipeParser(), // Din nya parser här - new GenericRecipeParser(), // Måste vara sist (fallback) -]; -``` - -## Bästa praxis - -- **I18n**: Använd svenska användarmeddelanden -- **Säkerhet**: Sanitera HTML-output innan du använder det -- **Robustness**: Testa edge-cases (tomma ingredienser, långa instruktioner) -- **Prioritering**: Mer specifika parsers måste komma före generiska - -## Tips för att debugga en ny sida - -1. Kolla om sidan använder JSON-LD: Öppna DevTools → Sök efter `