Description
cookcli est l'outil CLI officiel du format Cooklang (langage de description de recettes en texte brut).
- ✅ Format Cooklang : recettes en fichiers
.cooklisibles et versionnables (Git-friendly) - ✅ CLI complète : ajout, recherche, planning repas, listes
- ✅ OCR intégré : scannez livres de cuisine et convertissez en Cooklang
- ✅ Planning de repas avec calendrier
- ✅ Listes de courses auto-générées
- ✅ Panier : agrégation multi-recettes
- ✅ Serveur web intégré (
cook serve) pour consultation - ✅ Synchronisation : compatible multi-device via Git
Différence vs Tandoor : cookcli = pure CLI + format texte (dev-friendly, Git). Tandoor = GUI web riche. Pour qui: développeurs et power-users qui aiment les fichiers texte versionnables, ou personnes en déconnecté (pas de cloud).
Installation
Binaire pré-compilé (recommandé)
# Installation via cargo (si Rust installé) cargo install cookcli # Ou binaire GitHub releases (Linux/macOS/Windows) curl -L https://github.com/Cooklang/cookcli/releases/latest/download/cook-x86_64-unknown-linux-gnu.tar.gz | tar xz sudo mv cook /usr/local/bin/
Exemple .cook
>> Serves: 4 | Prep: 15min | Cook: 30min
Mettez @olive oil{2%tbsp} dans une #poêle{} à feu moyen.
Ajoutez @onion{1} et @garlic{3%clove} émincés.
Incorporez @tomato{400%g} concassées et laissez mijoter @basil{1%tsp}.
Servez avec @pasta{500%g} al dente.
Docker (serveur web)
version: '3.8'
services:
cookcli:
image: ghcr.io/cooklang/cookcli:latest
container_name: cookcli
restart: unless-stopped
volumes:
- ./recipes:/home/cook/recipes
- ./shopping_list:/home/cook/shopping_list
command: serve
ports:
- 9286:8080
Alternatives
Open Source
- [[app-tandoor-recipes|Tandoor Recipes]] — GUI web riche pour recettes
- [[app-grocy]] — ERP foyer complet
- [[app-recipesage]] — Recettes avec apps mobiles
Propriétaires
- Paprika — Référence multi-plateforme
- Obsidian + plugin Cooklang — Markdown + recettes
- Notion templates — Recettes dans Notion
Sécurité
- Pas de serveur web par défaut : cookcli = CLI pure
- Serveur web : sans auth, mettre derrière reverse-proxy
- Format texte : pas de SQL/NoSQL, données = fichiers
- Versioning Git = sauvegarde + historique
