Recipe websites make you scroll through a personal essay about someone's grandmother before you reach the ingredients. Half the screen is an autoplay video. Three pop-up windows appear before you find the cook time. Mealie, available at github.com/mealie-recipes/mealie with 12,884 stars and an AGPL-3.0 license, solves that problem by importing just the recipe and storing it in a clean, searchable database on your own server.
The practical pitch: paste a URL, get a clean recipe. Build a week of meal plans by dragging those recipes onto a calendar. Click one button to generate a consolidated shopping list that merges duplicate ingredients across all planned meals. No ads, no backstory, no subscription.
| Fact | Value |
|---|---|
| What it is | Self-hosted recipe manager and meal planner |
| Built by | Mealie contributors (open-source) |
| License | AGPL-3.0 (free to use, source code must stay open if you distribute it) |
| Platforms | Docker, Linux |
| Requires | Docker |
| Install method | Docker Compose |
| Verdict | Install if you cook regularly and want your recipes in one searchable place, free from ad-stuffed recipe sites |
What Mealie actually is
Mealie is a recipe database that lives on your own server and imports recipes from the web automatically.
The import works because most recipe websites use Schema.org Recipe markup. Schema.org is a shared vocabulary for structured data that websites embed in their HTML to help search engines understand the content. A site using this markup tags its recipe content with machine-readable labels: ingredient list here, step-by-step instructions here, cook time here, servings here. Mealie reads those tags and extracts only that content, discarding the surrounding blog post, advertisements, and video embeds. The result is a clean recipe card with no editorial padding.
Scraping, in this context, means automatically reading and extracting content from a web page. Mealie scrapes the structured recipe data from a URL you provide and stores it in your local database. If a site does not use standard Schema.org markup, Mealie lets you enter the recipe manually or paste text directly. It also supports OCR import: OCR stands for Optical Character Recognition, the technology that reads text from images. If you photograph a printed recipe card or a page from a cookbook, Mealie can read the text from that image and create a recipe entry from it.
Beyond recipe storage, Mealie is a full meal planning tool. Recipes go into a weekly calendar, and the planner knows their ingredients. When the week is set, Mealie generates a single shopping list that pulls every ingredient from every planned meal, combines duplicates (if two recipes need olive oil, you get one olive oil entry with the combined quantity), and gives you a list organized for a single shopping trip.
What you get after installing it
Once Mealie is running, you access it through a browser at your local server address.
The recipe library is the main view. Each recipe has its own card with a photo (pulled from the source if one is available), the ingredient list, step-by-step instructions, cook time, serving size, nutritional information when the source provides it, and a set of tags and categories you assign for organization. The search bar filters by title, tag, category, or ingredient. If you want every recipe that uses chickpeas, type chickpeas and you have them.
Recipe scaling is built in. Each recipe card has a serving size field. Change it and all ingredient quantities adjust proportionally. Cooking for two instead of four halves every measurement automatically.
The meal planner is a weekly calendar view. You drag a recipe from the library onto a day and a meal slot (breakfast, lunch, dinner, or a custom slot). The calendar shows the planned meals at a glance. When the week looks right, you open the shopping list view and Mealie computes the full ingredient list across all recipes in the plan, merging duplicates and consolidating quantities. You can check items off as you shop.
Mealie supports multiple user accounts, which means a household can share one installation. Each user can add recipes, contribute to the meal plan, and use the shopping list at the same time. Recipes can be set to public (shareable via URL with anyone) or private (visible only within the household accounts).
The cookbook feature groups recipes into named collections: a "weeknight dinners" cookbook, a "holiday baking" cookbook, whatever organization makes sense for how you cook. Tags cross-cut recipes by ingredient or technique, while cookbooks group them by occasion or purpose.
Mealie has a full REST API (a programming interface that external programs can use to read and write data). AI agents with access to that API can add recipes, query the ingredient database, suggest meal plans based on what ingredients you already have on hand, and generate shopping lists without any human interaction.
The install experience
Mealie runs on Docker. Docker is software that packages an application and all its dependencies into a self-contained unit called a container, which runs identically on any Linux server without manual setup of the underlying system. Docker Compose is a companion tool that starts a multi-component application from a single configuration file with one command.
The install is:
mkdir mealie && cd mealie
curl -L https://raw.githubusercontent.com/mealie-recipes/mealie/mealie-next/docker/docker-compose.yml -o docker-compose.yml
docker compose up -d
That pulls the official Compose file and starts Mealie. After a moment, the interface is available at http://localhost:9000. The first visit prompts you to create an admin account. The default credentials in the setup are changeme@example.com and MyPassword, which Mealie tells you to change immediately. After changing them you are inside the full application with no further configuration.
The only hard prerequisite is Docker. On a home server or a cloud VPS (a rented Linux machine from providers like Hetzner, DigitalOcean, or Linode), you install Docker, run the three commands above, and Mealie is running. The whole process takes under ten minutes.
One operational note: self-hosting means you are responsible for keeping the server online and for updating Mealie when new versions ship. Updates pull the new container image and restart: docker compose pull && docker compose up -d. This is not complex but it is a maintenance responsibility that does not exist with a cloud service.
Mealie also supports deployment to a home server running on a local network, so the installation never has to be internet-facing. Your recipe database stays on hardware you own, inside your home.
Where it fits and what to compare it to
The realistic alternatives are a short list.
Paprika App ($4.99 one-time, available on iOS, Android, and desktop) is the closest feature match in terms of recipe import and meal planning. The mobile experience is better than Mealie's. The tradeoff is that your data lives in Paprika's cloud sync service. The one-time price is attractive, and if you want a mobile-first experience without a server, Paprika is the pragmatic choice. Mealie wins if you want your recipes on infrastructure you control.
Yummly is a cloud recipe platform that was acquired by Whirlpool. It has a large curated recipe database built in, which Mealie does not. The downside is that it is a company-owned service with no self-hosted path and no clear long-term commitment to the product.
Plain browser bookmarks cost nothing but give you nothing: no clean import, no ingredient lists, no meal planner, no shopping list. You still load the ad-stuffed recipe site every time you cook.
A Notion database is flexible enough to store recipes and can import structured text, but there is no automatic URL scraping, no shopping list generation, and no meal calendar built in. You would be building the tooling yourself.
The honest verdict on fit: Mealie is the right choice if you want recipe import automation, a meal planner, and a generated shopping list, and if you are willing to run a Docker container. It is not the right choice if you primarily cook from a phone while standing at the stove and want a polished native mobile app.
Verdict
Install Mealie if you cook regularly, accumulate recipes from multiple websites, and want them in one place you can search and organize. The URL import removes the friction of manually copying ingredients and steps. The meal planner and shopping list generator close the loop from "what are we eating this week" to "here is what to buy" without touching a separate app.
The AGPL-3.0 license (a type of open-source license that is free to use; if you distribute a modified version you must share the source code) means there are no licensing costs for personal or household use. The Docker install is reliable and takes under ten minutes. The project at mealie.io is actively maintained.
The limitations are honest. There is no built-in recipe database to browse for new ideas the way Yummly provides one. Mobile support exists via the browser, but there is no dedicated iOS or Android app. And like any self-hosted tool, you take on the responsibility of keeping the server running.
If you have tried to use a recipe website recently and spent more time dismissing pop-ups than reading ingredients, you understand the problem Mealie solves. It is a focused tool that does what it promises and stores the result somewhere you control.