Skip to content

Repository files navigation

Laro Logo

Laro

Your Recipe Companion
Self-hosted recipe manager for home cooks

Cloud VersionSelf-HostFeaturesConfiguration


What is Laro?

Laro is a self-hosted recipe manager for home cooks. Import recipes from any website with AI, track your pantry, plan weekly meals, generate shopping lists, and cook with step-by-step guidance.

Your data stays on your server. No cloud required.


Don't Want to Self-Host?

Use our cloud version at laro.food - no setup required! Download the Android app from the Play Store and start cooking.

Self-hosted users can also use our official Android app - just point it to your server in the settings.


Quick Start

Option 1: Docker Compose (Recommended)

# Clone the repo
git clone https://github.com/Domocn/Laro.git
cd Laro

# Copy and configure environment
cp backend/.env.example backend/.env
# Edit backend/.env with your settings

# Start services
docker-compose up -d

# Open http://localhost:3000
# First user becomes admin!

Option 2: Manual Setup

Backend (Python 3.11+):

cd backend
python -m venv venv
source venv/bin/activate  # or venv\Scripts\activate on Windows
pip install -r requirements.txt

# Configure
cp .env.example .env
# Edit .env with your database and settings

# Run
uvicorn main:app --host 0.0.0.0 --port 8000

Frontend (Node 18+):

npm install
npm run dev
# Open http://localhost:5173

Database (PostgreSQL 15+):

# Create database
createdb laro

# Or with Docker
docker run -d --name laro-db \
  -e POSTGRES_USER=laro \
  -e POSTGRES_PASSWORD=your-password \
  -e POSTGRES_DB=laro \
  -p 5432:5432 \
  postgres:15

Features

Recipe Management

  • AI-powered import from any URL
  • Quick paste - AI parses raw text
  • Categories, tags, and favorites
  • Scale servings up/down
  • Version history

Pantry Tracking

  • Track ingredients with expiry dates
  • Swipe to mark used or delete
  • Find recipes matching your ingredients
  • AI recipe suggestions

Meal Planning

  • Weekly calendar view
  • Drag-and-drop planning
  • Auto-generate meal plans with AI

Shopping Lists

  • Auto-generate from meal plans
  • Check off as you shop
  • Smart ingredient grouping

Cooking Mode

  • Full-screen step-by-step
  • AI cooking assistant
  • Timer integration

Android App

Download our official Android app and connect it to your self-hosted server:

  1. Install the Laro app from the Play Store or laro.food
  2. Go to Settings > Server Configuration
  3. Enter your server URL (e.g., https://laro.yourdomain.com)

Configuration

Required: Database

DATABASE_URL=postgresql://laro:password@localhost:5432/laro

Required: JWT Secret

# Generate a secure random string (min 32 characters)
JWT_SECRET=your-very-long-secure-random-string-here

AI Provider (Choose One)

Ollama (Free, Self-Hosted):

LLM_PROVIDER=ollama
OLLAMA_URL=http://localhost:11434
OLLAMA_MODEL=llama3

OpenAI:

LLM_PROVIDER=openai
OPENAI_API_KEY=sk-your-key

Anthropic Claude:

LLM_PROVIDER=anthropic
ANTHROPIC_API_KEY=sk-ant-your-key

Email (Password Reset)

EMAIL_ENABLED=true
RESEND_API_KEY=re_your-key
SMTP_FROM_EMAIL=noreply@yourdomain.com

OAuth (Social Login)

GOOGLE_CLIENT_ID=your-id.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=your-secret
GITHUB_CLIENT_ID=your-id
GITHUB_CLIENT_SECRET=your-secret
OAUTH_REDIRECT_BASE_URL=https://yourdomain.com

Tech Stack

Component Technology
Web React, TypeScript, Tailwind CSS, Vite
Backend FastAPI (Python), PostgreSQL
AI Ollama, OpenAI, Claude, Gemini

Contributing

  1. Fork the repo
  2. Create feature branch (git checkout -b feature/amazing)
  3. Commit changes (git commit -m 'Add feature')
  4. Push (git push origin feature/amazing)
  5. Open a Pull Request

License

MIT License - use it, modify it, share it!


Made with love for home cooks

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages