Skip to content
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Build Status Coverage Status

This is a complete recipe system using Python + Django. A complete demonstration is live at


  • Most important models, such as Recipe, Food, Ingredient, Direction, Category, and a few more.
  • Very nice admin interface for creating recipes with inline ingredients and directions.
  • Front-end: only a recipe_list and recipe_detail so far, but the recipe_detail has an experimental method of displaying recipes that is based on this LaTeX style: (apparently based on style in a famous German cookbook by Dr. Oetker (Gromzik, J.; Reich, C.; Sander, C. (ed.): Dr. Oetker Schulkochbuch – Das Original. Ceres, Bielefeld, 1996.)
  • Automatic conversion from imperial weights and volumes to grams
  • Automatic nice formatting of imperial volumes.
  • Uses South database migration system.

Competitors/related projects

  • OpenEats - Django based recipes website.
  • KRecipes - KDE-based desktop recipes software.
  • Ben Collins-Sussman's effrecipes - Simple, but it works. Not under active development.
  • Recipes on Rails - Ruby on Rails recipes site. Not open source as far as I know. Embeds "Source: Recipes on Rails" on all photos and has google ads. Great site though. One thing it has that my site lacks is per-direction photos. This would be easy to do. I already have per-direction ingredients.

If you are aware of any other similar projects please let me know. I am especially interested in any other web-based and open-source cookbook projects.

Getting started

Follow these steps to get the recipes site up and running.

  1. Fork or clone the project.
  2. run sudo aptitude install libmysqlclient-dev python-dev gettext
  3. Install pipenv if you don't already have it
  4. Run pipenv install --dev
  5. Run pipenv shell
  6. Copy django_recipes/settings/ to django_recipes/settings/ and alter settings as necessary.
  7. Create database as per settings defined in django_recipes/settings/ (not necessary if using sqlite)
  8. Run .
  9. Run source env/bin/activate
  10. Run ./ syncdb from the menu
  11. Run ./ migrate
  12. Run ./ runserver
  13. Go to http://locahost:8000 in your browser
  14. The admin interface is at http://localhost:8000/admin
  15. You can run unit tests by running ./

Initial Data

To help get started I've provided a dump of my recipes site's tables (see dump.sql)


Recipe module and example site for Django



No releases published


No packages published