Initial vault setup
This commit is contained in:
@@ -0,0 +1,92 @@
|
||||
---
|
||||
title: Vanilla Cookbook
|
||||
created: 2026-06-08
|
||||
updated: 2026-06-08
|
||||
type: app
|
||||
tags: [catalogue, recipes, self-hosted, php]
|
||||
confidence: medium
|
||||
contested: false
|
||||
sources:
|
||||
- https://github.com/jt196/vanilla-cookbook
|
||||
---
|
||||
|
||||
# Vanilla Cookbook 🍰
|
||||
> Gestionnaire de recettes **minimaliste et simple** en PHP, sans framework lourd ni base de données complexe.
|
||||
|
||||
| Métadonnée | Valeur |
|
||||
| :--- | :--- |
|
||||
| **Site web** | https://github.com/jt196/vanilla-cookbook |
|
||||
| **GitHub** | https://github.com/jt196/vanilla-cookbook |
|
||||
| **License** | MIT |
|
||||
| **Langage** | PHP (sans framework lourd) |
|
||||
| **Étoiles** | 150 |
|
||||
| **Dernière MAJ** | 2026-05-25 |
|
||||
| **Catégorie** | [[cat-recipes]] |
|
||||
|
||||
## Description
|
||||
Vanilla Cookbook est un **gestionnaire de recettes minimaliste** écrit en PHP, pensé pour les utilisateurs qui veulent un outil simple et fonctionnel sans la complexité des gros projets comme Mealie ou Tandoor. Pas de framework JS moderne, pas de base PostgreSQL à administrer : juste du PHP, un peu de JavaScript vanilla, et SQLite pour le stockage.
|
||||
|
||||
L'application couvre l'**essentiel** : création de recettes avec ingrédients, étapes, photos, tags ; organisation par catégories ; recherche full-text basique ; import/export JSON ; planification de repas ; liste de courses. L'interface est volontairement dépouillée, légère et rapide à charger même sur un Raspberry Pi.
|
||||
|
||||
C'est l'outil idéal pour un **petit homelab** ou un **serveur familial** qui veut héberger un livre de recettes commun sans déployer une stack Docker de 500 Mo. Vanilla Cookbook consomme moins de 30 Mo de RAM et fonctionne avec PHP 8.0+ et SQLite. Son auteur, **jt196**, le maintient activement avec des releases régulières.
|
||||
|
||||
## Installation
|
||||
### Docker Compose
|
||||
```yaml
|
||||
services:
|
||||
cookbook:
|
||||
image: jt196/vanilla-cookbook:latest
|
||||
container_name: vanilla-cookbook
|
||||
environment:
|
||||
- APP_URL=https://cookbook.example.com
|
||||
- DB_TYPE=sqlite
|
||||
- PHP_TIMEZONE=Europe/Paris
|
||||
volumes:
|
||||
- ./data:/var/www/html/data
|
||||
- ./uploads:/var/www/html/uploads
|
||||
ports:
|
||||
- "8085:80"
|
||||
labels:
|
||||
- traefik.enable=true
|
||||
- traefik.http.routers.cookbook.rule=Host(`cookbook.example.com`)
|
||||
- traefik.http.routers.cookbook.entrypoints=websecure
|
||||
- traefik.http.routers.cookbook.tls.certresolver=letsencrypt
|
||||
- traefik.http.services.cookbook.loadbalancer.server.port=80
|
||||
restart: unless-stopped
|
||||
```
|
||||
|
||||
### Installation PHP classique
|
||||
```bash
|
||||
git clone https://github.com/jt196/vanilla-cookbook.git
|
||||
cd vanilla-cookbook && composer install
|
||||
php -S 0.0.0.0:8085
|
||||
```
|
||||
|
||||
## Configuration
|
||||
1. Cloner le repo et ajuster les permissions sur `./data` et `./uploads` (chown `www-data`).
|
||||
2. Configurer **`APP_URL`** et la **timezone PHP** dans `.env`.
|
||||
3. Créer le **compte admin** depuis l'UI au premier lancement.
|
||||
4. (Optionnel) Configurer un **reverse proxy** (Caddy, Nginx, Traefik) pour HTTPS.
|
||||
5. Importer vos recettes existantes via le **fichier JSON** (export depuis Paprika, Mealie, etc.).
|
||||
|
||||
## Alternatives
|
||||
- **Open source** : [[app-mealie]] (référence, plus complet), [[app-tamari]] (Python), [[app-norish]] (multi-users), [[app-bar-assistant]] (cocktails), Tandoor Recipes, Grocy, RecipeSage, Forkful, RecipeMD (Markdown), Cooklang, Foodsoft (coop).
|
||||
- **Propriétaire** : Paprika Recipe Manager, CopyMeThat, Plan to Eat, Yummly, BigOven, Cookpad, Samsung Food.
|
||||
|
||||
## Sécurité
|
||||
- **Permissions strictes** sur le dossier `./data` (SQLite) : `chmod 700` recommandé.
|
||||
- **HTTPS obligatoire** via reverse proxy (Let's Encrypt, Caddy).
|
||||
- **Désactiver l'inscription ouverte** après création du premier compte admin.
|
||||
- **Backups réguliers** de `./data` (SQLite) et `./uploads` (photos).
|
||||
- **PHP-FPM** plutôt que mod_php pour réduire la surface d'attaque sur Apache/Nginx.
|
||||
|
||||
## Ressources
|
||||
- Code : https://github.com/jt196/vanilla-cookbook
|
||||
- Releases : https://github.com/jt196/vanilla-cookbook/releases
|
||||
- Issues : https://github.com/jt196/vanilla-cookbook/issues
|
||||
|
||||
## Pages Liées
|
||||
- [[cat-recipes]] — Catégorie parente
|
||||
- [[app-mealie]] — Référence en gestion de recettes
|
||||
- [[app-tamari]] — Alternative Python minimaliste
|
||||
- [[recettes-docker-compose]] — Modèles de stacks
|
||||
Reference in New Issue
Block a user