First public release of CookTrace, a self-hosted, fully-featured recipe manager for keeping every recipe you cook in one place, with the pantry, cook diary, shopping list, and Android app to match. Inspired by apps like Mealie, built as the third app in the Trace family alongside NutriTrace (nutrition) and LiftTrace (lifting). Single Docker container, AGPL-3.0, no telemetry, no cloud sync, no subscriptions.
Repo: https://github.com/TraceApps/cooktrace
Release: https://github.com/TraceApps/cooktrace/releases/tag/v1.0.0-rc.1
Docker (amd64 + arm64): ghcr.io/traceapps/cooktrace:latest
Recipes
- Full recipe model: hero photo, ratings, ingredient groups, step-by-step instructions with per-step photos, kitchen gear, source / video URLs, rich-text notes
- Live scaling with snap-to-cooking-fractions math (
1 ½ cupnot1.5 cup) - Inline unit converter per ingredient with a built-in 250-entry density table, so volume → grams resolves correctly for flours, oils, dairy, sugars
- Cook Mode with screen wake-lock, bigger fonts, persistent checkboxes
- FDA-style Nutrition Facts box per recipe (31 nutriments, %DV column)
- Cook log — date + notes + photo per cook, full per-recipe history
- Sharing — per-user grants, public-link share tokens, Pinterest-style recipe-card image, Kitchens for fanning shares to a whole household
Bring your existing library
If you already keep recipes somewhere, you don’t have to start over:
- Any recipe URL — three engines: schema.org JSON-LD (fast),
recipe-scrapersPython library (300+ site-specific extractors), AI Smart mode for sites that block scrapers - Photo import — snap a cookbook page, the AI assistant extracts the recipe
- Mealie / Tandoor / Paprika — paste-import single recipes from JSON, or bulk-import a full-backup zip. Picker shows thumbnails so you can choose exactly which 10 of 200 to bring over
- NutriTrace foods → Pantry — search your NT food library and bulk-import as pantry items with nutrition + image
Everything else
- Pantry with barcode scanning (ML Kit on Android, QuaggaJS on web), Open Food Facts + USDA lookup, and an “8 / 10 in pantry” match pill on every recipe card
- Cook Diary + Meal Planner — list and month-calendar views, drag-to-re-plan, one-tap mark as cooked
- Shopping list that pulls missing ingredients from a recipe and skips anything already stocked
- Trace AI assistant — bring your own Claude / OpenAI / Gemini key, or point at a local Ollama / LM Studio / LocalAI. Tool use reads + writes your real data; hold-to-record voice for hands-free logging
- NutriTrace federation — pull foods from your NT instance, log cooked recipes back to its diary
- Android app — runs standalone (fully offline) or connected to the server, with differential sync, biometric sign-in, native barcode scanning
- Multi-user — invites, password reset, OIDC SSO (Authentik, Keycloak, Authelia, Pocket-ID, Google)
- Backup — scheduled auto-backups, full ZIP restore, portable JSON, Android local-mode
.zipfor phone-to-phone transfer
First public release — bugs expected
Stable in solo testing for months, but real-world deployment surfaces things one person never will. Bug reports, feature requests, importer-failure URLs, and translation PRs are all genuinely wanted. Use the in-app Diagnostics view (Settings → Diagnostics → View Logs → Share) to attach logs to bug reports.
This looks incredible! Can’t wait to try it.
Thank you!!!
This looks awesome! What I look for in such an app would be the following features
Meal Planner: Automatically create a meal plan that fits certain criteria such as calories, cooking time, ingredient cost etc. while still allowing for pre-defined meals. This way I could say “I want to eat burgers on this day, make me reach my calorie goal as best as possible by adjusting the other meals on that day” I could imagine this to be implemented using a linear optimizer where the user can add constraints. For example optimize calories / macro nutrients towards this value, minimize cost, minimize cooking time on weekdays, allow more cooking time on weekends… I guess the constraints could be any data available per recipe.
The second feature might be something NutriTrace already does but being able to cook a recipe and then have calories estimated by the weight of the food on my plate would be awesome for recipes where it is not possible to measure individual incredients or which do not have a fixed portion size such as for example Chili con Carne or Stew. This might also play into the linear optimizer thing, where the optimizer could vary the portion size if needed.
I would implement something like this myself but I currently lack the time, so if other people are interested in such a feature too, it might be worth implementing :)
Holy shit dude, I haven’t even found the time to try NutriTrace and now there’s this ? Impressively prolific.
This is freaking genius.
Only question: Any plans for a Home Assistant integration?
Not right now. I want to get all my apps past the RC stage and into stable GA but will certainly consider it in the future.
Thanks a lot for doing this! I truly appreciate it!
Will be giving this a shot, looks like it’s full of quality of life features. I wanted something like mealie that was lower friction. Maybe this is it
Any recipe URL — three engines: schema.org JSON-LD (fast), recipe-scrapers Python library (300+ site-specific extractors), AI Smart mode for sites that block scrapers
So, I can input a url of a recipe, say: https://ciaoflorentina.com/rustic-crusty-bread-recipe/ (no idea who they are, just first search result) and CookTrace imports it correctly? Or are there specific sites that can be imported. How about TikTok recipes? I know, I know…but my lady friend likes trying recipes off of TikTok. Some actually are very good despite the source. She wouldn’t bookmark them, so of course it was a hassle to go find them. I finally found an app called CookGo that would import the recipe off of TikTok in a format we’re all used to sans all the chatter.
That URL should import cleanly; it’s a standard food blog with the markup the importer expects.
TikTok though, honestly, no. TikTok pages don’t expose the recipe text to scrapers and the AI fallback has almost nothing to work with. A real TikTok URL importer would need to call TikTok’s caption API and transcribe the video audio, which isn’t built yet.
Workaround that may possibly work today: screenshot the recipe overlay (or the comment where the creator wrote it out) and use Photo Import the AI extracts the recipe from the image. Two taps, same result.
I’m just going to note I’ve done this with an instagram recipe with good results - not with cooktrace, but my local llm to generate json for mealie.
I’ll have to spin your trio up this weekend!
Cool, I figured TikTok was a long shot. Regardless, I think I’m going to give it a go.
Any comparison to tandoor? I see we can import from it but I have a hard time trying to get free time to test things like this. X.x
Here is what i see as some differences today between CookTrace and Tandoor:
CookTrace:
- Pantry is a real first-class catalog, not a tag list. Barcode scanner, Open Food Facts + USDA lookup, per-item stock / serving size / nutrition, plus an “8 / 10 in pantry” match pill on every recipe card. Tandoor has the food list; CookTrace treats it as a primary surface.
- AI assistant with tool use — not just a chat bubble. Trace can log a cook, plan a cook, add things to the shopping list, mark a pantry item out of stock, import a recipe URL, etc. by reading and writing your real data
- FDA-style Nutrition Facts box auto-computed per recipe from pantry-linked ingredients
- Android app with full offline mode (on-device SQLite, differential sync when you reconnect)
- NutriTrace federation can import foods from NutriTrace directly into CookTrace’s pantry.
Where Tandoor still wins today: PDF / image OCR bulk import, longer track record, larger ecosystem, iCal meal-plan feeds.
Importer’s there in CookTrace, so you can move a copy over to compare with zero risk to your existing library whenever the time shows up.
Thank you, I appreciate this!
I have a huge messy folder on my server packed with hundreds of recipes in plain text, rtf, PDF, and other formats. Can this tool automagically import and organize all of them?
Honestly, not automagically. CookTrace’s bulk importers today handle JSON, HTML, schema.org Recipe markup, and full-backup zips from Mealie / Tandoor / Paprika. Plain text, RTF, and PDF aren’t on that list yet, and there’s no “point at a folder and import everything” mode.
What works today for the same end goal:
- Photo Import — point Trace AI at an image of any recipe (including a PDF you’ve screenshotted) and it extracts it. Fine for a handful, probably painful for hundreds.
- Trace AI chat — paste the recipe text into the assistant and ask it to create a recipe. Same idea, no image step.
A proper OCR import is a worthwhile feature. I created a feature enhancement request in the GitHub repo, so that in the near future I can set aside some time to explore how feasible it would be to implement.




