I've always loved to cook, and I've always loved to eat. I've always had a bit of an obsession with re-creating some amazing dish that I've had before. I'm also a bit of a perfectionist, and have generally been obsessed with recipes and wanting to create the perfect recipe for everything.
What do I hate about other recipe books?
As for recipe websites, I have the same complaints but with some additional gripes:
In 2004 I had this idea to create a LaTeX-based recipe site that would render recipes nicely and solve some of these problems. I called it freecookbook.
Here's what I wrote in my application:
I am not sure if you guys support this kind of project, but I think it is an interesting and very useful one. There are some free recipe websites out there but often I find there are just TOO many recipes. Other websites like allrecipes.com make people pay to see certain recipes.
There we can see that one of my main frustrations was the number of recipes (and hence the quality), and the fact that some sites make people pay to see certain recipes (I guess allrecipes.com was maybe partly pay-walled at the time, although I don't remember that).
The goal is to create a free open-source cookbook (of food recipes) using an amazing (but simple) latex class called ['cooking' by Axel Reichert](https://ctan.org/tex-archive/macros/latex/contrib/cooking?lang=en). This class has a great way of structuring the recipe layout which you can see in the source code I provided.
I was hugely into LaTeX at the time. I did everything in LaTeX, and when I started documenting some family recipes I immediately looked to see if there were any existing LaTeX styles out there to typeset recipes. This particular LaTeX style was hugely inspirational to me.
Here's what Alex Reichert has to say about recipe typesetting:
Most books start a recipe with a list of ingredients, after that a few paragraphs describing what to do. Thus it is difficult to find the continuation of the recipe, what to do next... An even better solution is to use a two-column layout: Each ingredient appears in the left-hand column, what to do with it is written in the right-hand column. The right column is less wide than the usual width of the text, this makes quick browsing of the recipe easier, like in newspapers. Also, there is no need for a list of ingredients, you just read the left column.
He goes on to reference that this same style is used in the popular German cookbooks by Dr. Oetker, and it's also suggested in the popular German textbook on typography by Willberg and Forssman.
This is the only example I can find of a Dr. Oetker cookbook that actually uses this two-column layout:
Example of the two-column layout in an older Dr. Oetker cookbook
More modern versions of Dr. Oetker cookbooks seem to have abandoned this style in favor of a more traditional layout (Dr. Oetker by the way is kind of like the Betty Crocker of Germany, this is according to a German blogger); however there are some other Dr. Oetker cookbooks that do use this style:
A more recent Dr. Oetker cookbook using the two-column layout
I recently noticed that the old Better Homes & Gardens cookbook also uses this style of mixing ingredients and instructions but without the two-column layout:
Example of the two-column layout in an older Better Homes & Gardens cookbook
Anyways, I digress. This is what I continued to write about in my application for the freecookbook project:
The cookbook would contain many recipes. Initially, the cookbook would contain almost any recipe. Recipes would be decided upon by the developers whether or not to include them. Identical recipes would be merged so as to find the ultimate recipe. For example, unless two recipes for spaghetti sauce differ significantly, the two recipes will be combined, taking the best of each to make the best recipe. This cookbook will start off as being the best of the best, only the best recipes out there. Eventually as the project expands I would like to have several cookbooks branch off into a desert-only cookbook, a vegetarian-only cookbook, a main course-only cookbook, and so on. This is easily achieved by using `\include` statements, to include recipes of certain types. Using LaTeX as the processing system gives us a lot of flexibility, especially with regards to changing the output format of the recipes later.
Here you can see the start of what I was also thinking about: separating the formatting from the content. LaTeX is a great tool for this, and it's what I was using to write my recipes at the time. I wrote a dozen recipes in LaTeX and then never really went any further with it. You can still see the freecookbookrecipes here in this PDF.
The original freecookbook LaTeX-based recipe site from 2004
Finally, I added:
I have one person on the internet who also uses the latex cooking class and is willing to help contribute some recipes to get us started.
I did get many other offers for help over the years, like this one from a concerned Italian:
I have come across your project "FreeCookBook". You use spaghetti as an example while discussing your philosophy, and, being Italian, I feel the need to point out some misconceptions.
Or this one in 2006:
The FCB sounds like a fun project and I'd love to help out.
There were a dozen other offers to help over the years. I was initially excited, as I said to my wife:
> A guy just responded to my "job posting" for help with the freecookbook project. It's volunteer of course. Actually another guy mentioned before he wants to help, but he's more into contributing recipes. Before that we need to develop an easy way for people to input recipes, the latex format is too cryptic.
There we see the problem, typing recipes in LaTeX is not exactly the way to go.
To another person a few months later, I responded:
I kind of put it on hold because so much has changed in recent years, especially in regards to web apps and wikis and the like. I think it might be more reasonable to make a webapp (using Django perhaps) to input recipes, and then to have an export function to export recipes to latex in a nice print format...
So around 2010, I started creating Django Recipes and initially hosted a site on https://recipes.davidgrant.ca that was a simple Django app with a database of recipes. It featured:
For years my wife and I have been using it to store a handful of recipes that we use very often, especially: * Spaghetti sauce * Pancakes * Chocolate chip cookies
We love the scaling feature and the ability to convert to grams. If there is ever a recipe I find online that is not written in grams, or if I really want to easily scale it up or down, I'll add it to my site.
From around 2010 to 2024, this was the state of my site. I added a few recipes here and there, but adding new recipes was so cumbersome.
In 2024, I finally completely revamped the site with modern features:
Thanks for visiting my site.