Recipe-Buddy

Recipe-Buddy

Docker app from grtgbln's Repository

Overview

Recipe Buddy is a tool that enables the easy adding of recipes to Grocy through web scraping.

Recipe Buddy

Stand With Ukraine wakatime

Update - April 2024

V2 of Recipe Buddy is here! V2 brings a host of improvements, including:

  • An all-new architecture - SQLIte replaces Mongo and Next.js replaces the massively overkill Nest.js and plain React
  • Can be run in one (1) Docker container - no messing about with compose files
  • A whole new UI

The only thing that hasn't really changed is the recipe scraping logic itself - that is coming (no promises on when though)

The problem

I am getting sick of manually importing recipes into Grocy.

The solution

Overcomplication, naturally. Recipe Buddy is a web app which scrapes web pages for the delicious structured metadata embedded therein.

Once the recipe has been extracted from the page, Recipe Buddy gives you a nice easy means to match each of its ingredients up with a product from your Grocy stock, as well as a quantity unit. Once this is done, you simply hit the ' Add Recipe' button, and the TypeScript goblins painstakingly transcribe the recipe into your Grocy instance, ready for meal planning!

How you can have a go

"Well gee, George, that sounds mighty swell", I hear you say, "but how does little old me go about harnessing the TypeScript goblins for my own recipe-scraping requirements?"

Well, dear reader, as I am a benevolent goblin-wrangler, I have imprisoned them in a poorly written Dockerfile for you! All one needs to do to benefit from the gobliny goodness is as follows:

  1. Generate yourself an auth secret using openssl rand -base64 32
  2. Get the base url of your Grocy instance (everything up to the first /)
  3. Get an API key for your Grocy instance
  4. Run the following command:
    docker run \
     -p 3005:3000 \
     -v rb_data:/home/node/app/data \
     --env GROCY_API_KEY=YOUR_GROCY_API_KEY \
     --env GROCY_BASE_URL=YOUR_GROCY_BASE_URL \
     --env NEXTAUTH_SECRET=YOUR_AUTH_SECRET \
     --env NEXTAUTH_URL=http://localhost:3005 \
     ghcr.io/georgegebbett/recipe-buddy
    

A disclaimer

I am apparently a professional software engineer, however I certainly do not profess to be any good at this stuff. I hereby abdicate any responsibility for the misbehaviour of the TypeScript goblins. If you think you can do better, then open a PR and I will almost certainly merge it without question.

Lots of love, George xoxoxoxo

Install Recipe-Buddy on Unraid in a few clicks.

Find Recipe-Buddy in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.

Open the Apps tab on your Unraid server Search Community Apps for Recipe-Buddy Review the template variables and paths Click Install

Requirements


        Requires a separate Grocy instance.
    

Related apps

Details

Repository
ghcr.io/georgegebbett/recipe-buddy:latest
Last Updated2026-07-17
First Seen2025-11-19

Runtime arguments

Web UI
http://[IP]:[PORT:3000]/
Network
bridge
Privileged
false

Template configuration

Web UI PortPorttcp

Container Port: 3000

Target
3000
Default
3000
Value
3000
Grocy - Base URLVariable

Base URL for Grocy (e.g., http://grocy.local:9283)

Target
GROCY_BASE_URL
Grocy - API KeyVariable

API key for Grocy

Target
GROCY_API_KEY
Auth - SecretVariable

Generate with 'openssl rand -base64 32'

Target
NEXTAUTH_SECRET
Auth - URLVariable

URL for Recipe Buddy. Replace with IP address and port

Target
NEXTAUTH_URL
Default
http://localhost:3000
Value
http://localhost:3000
App DataPath

Path to the data folder

Target
/home/node/app/data
Default
/mnt/user/appdata/recipe-buddy/data
Value
/mnt/user/appdata/recipe-buddy/data