How to Set Up Tandoor Recipes on Your Breeze
Tandoor Recipes is a feature-rich, self-hosted recipe management application designed for households that take cooking seriously. It offers advanced meal planning, nutritional tracking, shopping list generation, and multi-user collaboration. Deploying Tandoor on your Breeze provides a powerful alternative to commercial meal-planning services.
Prerequisites
- A Breeze instance with at least 2 GB of RAM
- Docker and Docker Compose installed
- A domain or subdomain (e.g.,
tandoor.example.com)
Step 1 — Download the Configuration
Clone the Tandoor repository and prepare the environment:
mkdir -p ~/tandoor && cd ~/tandoor
wget https://raw.githubusercontent.com/TandoorRecipes/recipes/develop/docs/install/docker/plain/docker-compose.yml
wget https://raw.githubusercontent.com/TandoorRecipes/recipes/develop/.env.template -O .env
Step 2 — Configure Environment Variables
Edit the .env file with your settings:
SECRET_KEY=$(openssl rand -hex 32)
DB_ENGINE=django.db.backends.postgresql
POSTGRES_HOST=db_recipes
POSTGRES_PORT=5432
POSTGRES_USER=tandoor
POSTGRES_PASSWORD=$(openssl rand -hex 16)
POSTGRES_DB=tandoor
TANDOOR_PORT=8080
ALLOWED_HOSTS=tandoor.example.com
Step 3 — Launch the Stack
docker compose up -d
After the containers start, create your superuser account:
docker compose exec web_recipes python manage.py createsuperuser
Follow the prompts to set your username, email, and password.
Step 4 — Reverse Proxy Configuration
Configure Nginx to proxy requests to Tandoor:
server {
listen 443 ssl http2;
server_name tandoor.example.com;
client_max_body_size 128M;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
location /media/ {
alias /path/to/tandoor/mediafiles/;
}
}
Key Features
Once Tandoor is running, explore its powerful feature set:
- Recipe import — paste a URL to scrape recipes from cooking websites, or import from other apps
- Meal planning — plan meals on a calendar with drag-and-drop, supporting multiple meal types per day
- Shopping lists — auto-generated from meal plans with intelligent ingredient grouping by supermarket aisle
- Nutritional information — track calories, macros, and micronutrients for each recipe
- Step-by-step cooking — a guided cooking mode displays one step at a time on your phone or tablet
- Ingredient management — maintain a centralized ingredient database with unit conversions
Multi-User Collaboration
Tandoor supports multiple users with different permission levels. Create accounts for family members through the admin panel, and organize recipes into shared or private spaces. Each user can maintain their own meal plan while sharing a common recipe database. The invitation link feature makes it easy to onboard new household members.
Backups
Export your entire recipe database for backup:
docker compose exec web_recipes python manage.py export_recipes
Also back up the PostgreSQL database and media files regularly to protect your recipe collection.