Files
2026-06-09 18:40:21 +02:00

3.6 KiB


title: RecipeSage created: 2026-06-08 updated: 2026-06-08 type: app tags: [catalogue, grocery-lists, app-marathon-batch-c] confidence: medium contested: false sources: [https://selfh.st/apps/?tag=Grocery+Lists&app=recipesage]

🛒 RecipeSage

Gestionnaire de recettes collaboratif : importez depuis le web, organisez par collections, partagez en famille avec interface web et mobile.

📋 Informations Générales

Champ Valeur
Site web recipesage.com
GitHub julianpoy/RecipeSage
License AGPL-3.0
Langage Node.js + TypeScript
Étoiles GitHub 1.4k
Catégorie cat-grocery-lists

📝 Description

RecipeSage est un gestionnaire de recettes open source avec import web depuis URL ou texte :

  • Import web depuis plus de 30 sites (AllRecipes, NYT Cooking, etc.)
  • Import OCR depuis photos de livres de cuisine
  • Listes de courses multiples et partagées
  • Planificateur de repas avec calendrier
  • Collections pour organiser par thème/catégorie
  • Partage public de recettes avec lien
  • Apps natives : web, iOS, Android, extension Chrome
  • Multi-utilisateurs avec permissions

Différence vs Tandoor : RecipeSage = interface moderne et grand public, apps natives matures. Tandoor = plus orienté power-user, scraping plus étendu. Pour qui: familles qui veulent une app mobile de qualité type Paprika mais libre.

🚀 Installation

Docker Compose (recommandé)

version: '3.8'
services:
  recipesage:
    image: julianpoy/recipesage:latest
    container_name: recipesage
    restart: unless-stopped
    environment:
      - DB_HOST=db
      - DB_USER=recipesage
      - DB_PASS=changeme
      - DB_NAME=recipesage
      - JWT_SECRET=changez-moi-ici
      - BASE_URL=https://recipesage.example.com
    volumes:
      - recipesage_uploads:/app/uploads
    ports:
      - 9290:3000
    depends_on:
      - db
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.recipesage.rule=Host(`recipesage.example.com`)"
      - "traefik.http.routers.recipesage.entrypoints=websecure"
      - "traefik.http.routers.recipesage.tls.certresolver=letsencrypt"

  db:
    image: postgres:13-alpine
    restart: unless-stopped
    environment:
      POSTGRES_DB: recipesage
      POSTGRES_USER: recipesage
      POSTGRES_PASSWORD: changeme
    volumes:
      - recipesage_db:/var/lib/postgresql/data

volumes:
  recipesage_uploads:
  recipesage_db:

🔄 Alternatives

Open Source

Propriétaires

  • Paprika — Référence payante, multi-plateforme
  • Whisk (Samsung Food) — Planificateur repas intégré
  • NYT Cooking — Recettes éditoriales payantes

🔐 Sécurité

  • JWT pour l'auth, secret à définir absolument
  • HTTPS obligatoire via Traefik (CORS strict)
  • Base Postgres : sauvegarder régulièrement
  • Pas d'auth à 2 facteurs (2FA) intégrée — à compenser

📚 Ressources

Pages Liées