diff --git a/README.md b/README.md index e3b7963..1963d86 100644 --- a/README.md +++ b/README.md @@ -84,6 +84,13 @@ size. This shrinks the book from more than 50MB down to ~5MB: * [Download compiled B&W .epub version](https://www.the-bread-code.io/bw-book.epub) +If you prefer a very short version (about 10 pages) with main flowcharts and +crucial informations needed while you are in the kitchen, we also provide a +"too long;didn't read" version you could print. Having read the full book is +highly recommended to understand this leaflet: + +* [Download a condensed version](https://www.the-bread-code.io/booklet.pdf) + ## Online HTML version Head over to [https://www.the-sourdough-framework.com](https://www.the-sourdough-framework.com) diff --git a/book/booklet.tex b/book/booklet.tex new file mode 100644 index 0000000..03c3165 --- /dev/null +++ b/book/booklet.tex @@ -0,0 +1,167 @@ +%\documentclass[draft, paper=a4, twoside=false, fontsize=12pt]{scrbook} +\documentclass[paper=a4, twoside=false, fontsize=12pt]{scrbook} + +% General packages +\usepackage{sourdough} +\usepackage[ + paperwidth=210mm, + paperheight=260mm, + top=10mm, + bottom=80mm, + inner=10mm, + outer=10mm, + marginparsep=7mm, + marginparwidth=48mm, +]{geometry} +\usepackage{showframe} +\usepackage{subcaption} + +\pagenumbering{gobble} +% Basic attributes +\author{Hendrik Kleinwächter} +\title{The Sourdough Framework\\\texttt{tl;dr Version}} +\begin{document} +\maketitle + +\section*{Starter maintenance} +\begin{flowchart}[!htb] + \centering + \input{figures/fig-starter-process.tex} + \caption*{How to setup a sourdough starter} +\end{flowchart} + +\begin{flowchart}[!htb] + \centering + \input{figures/fig-starter-readiness.tex} + \caption*{Preparing your starter for baking} +\end{flowchart} + +\begin{flowchart}[!htb] + \centering + \input{figures/fig-starter-maintenance.tex} + \caption*{Maintaining your starter, change ratio as per starter hydration + type} +\end{flowchart} + +\clearpage{} +\section*{Baker's math} +\begin{table}[!htb] + \centering + \input{tables/table-bakers-math-example.tex} + \caption*{An example table demonstrating how to properly calculate using + baker's math} +\end{table} + +\section*{Dough \& proofing} +\subsection*{Flat bread} +\input{recipes/flat-bread.tex} +\clearpage{} + +\subsection*{Freestanding bread} +\begin{table}[!htb] +\centering + \begin{tabular}{@{}lrrrp{0.4\linewidth}@{}} + \toprule + \thead{Ingredient}& & \thead{Percentage} & \thead{Calculation} & \thead{Comments} \\ \midrule + Flour & \qty{400}{g} & & & \\ + Whole-wheat flour & \qty{100}{g} & & & \\ + Total flour & & \qty{100}{\percent} & \qty{500}{g} & \\ + Water & & \qty{60}{\percent} & \qty{300}{g} & \\ + Sourdough starter & & \qty{10}{\percent} & \qty{50}{g} & \\ + Salt & & \qty{2}{\percent} & \qty10{}{g} & \\ \midrule + Flour & & \qty{100}{\percent} & & \\ + Water & & & & \\ + Sourdough starter & & & & \\ + Salt & & & & \\ \midrule + Flour & & & & \\ + & & & & \\ + & & & & \\ + & & & & \\ + & & & & \\ \bottomrule + \end{tabular} +\caption*{Table for your own calculation using baker's math} +\end{table} + +\begin{flowchart}[!htb] + \centering + \input{figures/fig-wheat-sourdough-process.tex} +\end{flowchart} + +\begin{flowchart}[!htb] + \centering + \input{figures/fig-kneading-process.tex} +\end{flowchart} + +\begin{flowchart}[!htb] + \centering + \input{figures/fig-bulk-fermentation.tex} +\end{flowchart} + +\begin{figure*}[!htb] + \centering + \includegraphics[width=\textwidth]{stretch-and-fold-steps} + \caption*{An overview of the steps involved to perform stretch and folds for + wheat-based doughs.}% +\end{figure*} +\clearpage{} + +\section*{Shaping} +\begin{flowchart}[!htb] + \centering + \input{figures/fig-proofing-process.tex} +\end{flowchart} + +\begin{figure*}[!htb] +\centering + \begin{subfigure}{.475\linewidth} + \includegraphics[width=\linewidth]{preshape-direction} + \caption*{Preshaping: Drag the dough in the direction of the rough + surface area.}% + \end{subfigure} + \begin{subfigure}{.475\linewidth} + \includegraphics[width=\linewidth]{step-1-flour-applied} + \caption*{Step 1: Apply flpour to the dough's surface.}% + \end{subfigure}\hfill % <-- "\hfill" + \medskip % create some *vertical* separation between the graphs + \begin{subfigure}{.475\linewidth} + \includegraphics[width=\linewidth]{step-2-flipped-over} + \caption*{Step 2: Flipp-over dough. Note how the sticky side is facing + you while the floured side is facing the countertop.} + \end{subfigure}\hfill % <-- "\hfill" + \begin{subfigure}{.475\linewidth} + \includegraphics[width=\linewidth]{step-3-rectangular} + \caption*{Step 3: Make the dough rectangular, keep the sticky side + facing you while the floured side is facing the countertop.}% + \end{subfigure} + \caption*{First steps of shaping process} +\end{figure*} + +\begin{figure*}[htb!] + \centering + \includegraphics[width=\textwidth]{step-4-folding} + \caption*{Step 4: The process of folding a batard. Note how the rectangle + is first glued together and then rolled inwards to create a dough roll. + Utimately the edges are sealed to create a more uniform dough.}% +\end{figure*} +\clearpage{} + +\section*{Baking} +\begin{flowchart}[!htb] + \centering + \input{figures/fig-baking-process.tex} + \caption*{Summary of bread baking process} +\end{flowchart} + +\begin{flowchart*}[!htb] + \centering + \input{figures/fig-dutch-oven-process.tex} + \caption*{Baking with a Dutch Oven} +\end{flowchart*} + +\begin{flowchart}[!htb] + \centering + \input{figures/fig-inverted-tray-method.tex} + \caption*{Bakign with the inverted tray method} +\end{flowchart} +\clearpage{} +\end{document} diff --git a/book/bread-types/bread-types.tex b/book/bread-types/bread-types.tex index dcde93d..12ce1cf 100644 --- a/book/bread-types/bread-types.tex +++ b/book/bread-types/bread-types.tex @@ -242,57 +242,10 @@ culinary applications. Whether you're scooping up a savory dip, wrapping a flavorful filling, or simply enjoying a piece with a drizzle of olive oil, these flatbreads are sure to impress. -\subsubsection*{Ingredients} +\input{recipes/flat-bread.tex} -\begin{tabular}{r@{}rl@{}} -\qty{400}{\gram} &~(\qty{100}{\percent}) & Flour (wheat, rye, corn, whatever you have at hand)\\ -\qty{320}{\gram} & (\qty{80}{\percent}) & Water, preferably at room temperature\\ -\qty{80}{\gram} & (\qty{20}{\percent}) & Active sourdough starter\\ -\qty{8}{\gram} & (\qty{2}{\percent}) & Salt\\ -\end{tabular} - -\subsubsection*{Instructions} -\begin{description} -\item[Prepare the dough] In a large mixing bowl, combine the flour and water. -Mix until you have a shaggy dough with no dry spots. - -Add the sourdough starter and salt to the mixture. Incorporate them thoroughly -until you achieve a smooth and homogenized dough. - -\item[Fermentation:] Cover the bowl with a lid or plastic wrap. Allow the dough - to rest and ferment until it has increased by at least \qty{50}{\percent} - in size. Depending on the temperature and activity of your starter, this - can take anywhere from 4 to 24~hours. - -\item[Cooking preparation:] Once the dough has risen, heat a pan over medium heat. -Lightly oil the pan, ensuring to wipe away any excess oil with a paper towel. - -\item[Shaping and cooking:] With a ladle or your hands, scoop out a portion of -the dough and place it onto the hot pan, spreading it gently like a pancake. - -Cover the pan with a lid. This traps the steam and ensures even cooking -from the top, allowing for easier flipping later. - -After about 5~minutes, or when the bottom of the flatbread has a -golden-brown crust, carefully flip it using a spatula. - -\emph{Adjusting cook time.} If the flatbread appears too dark, -remember to reduce the cooking time slightly for the next one. -Conversely, if it's too pale, allow it to cook a bit longer before flipping. - -Cook the flipped side for an additional 5~minutes or until it's also golden -brown. - -\item[Storing:] Once cooked, remove the flatbread from the pan and place it on a -kitchen towel. Wrapping the breads in the towel will help retain their -softness and prevent them from becoming overly crisp. -Repeat the cooking process for the remaining dough. - -\item[Serving suggestion:] Enjoy your sourdough flatbreads warm, -paired with your favorite dips, spreads, or as a side to any meal. - -\end{description} -\section{Loaf pan bread} +\section{Loaf pan bread}% +\label{sec:loaf-pan-bread} Loaf pan bread is made using the help of a special loaf pan or loaf tin. The edges of the pan provide additional support diff --git a/book/makefile b/book/makefile index ee8c7bc..fa1276b 100644 --- a/book/makefile +++ b/book/makefile @@ -31,10 +31,12 @@ chapters = baking basics bread-types cover flour-types history intro mix-ins\ src_tables := $(wildcard tables/table-*.tex) src_figures := $(wildcard figures/fig-*.tex) figures/flowcharts_tikz.tex +src_recipes := $(wildcard recipes/*.tex) src_tex := $(foreach directory, $(chapters), $(wildcard $(directory)/*.tex)) src_tex += book.tex book_sans_serif.tex references.bib figures/vars.tex src_tex += supporters.csv sourdough.sty colors.tex +scr_tex += $(src_recipes) images := $(wildcard images/*/*.jpg) images += $(wildcard images/*.jpg) @@ -55,6 +57,11 @@ ebook_src := $(src_all) tex4ebook.cfg book.mk4 book-ebook.css website_src := $(src_all) website.cfg style.css +# This is more than what is actually needed but keeps the makefile simple +# and latexmk will handle the rest +booklet_src := $(src_figures) $(src_tables) $(src_recipes) $(images) +booklet_src += booklet.tex + website_assets := $(wildcard ../website/assets/*) ruby_src := ../website/modify_build.rb $(website_assets) ruby_pkg := ../website/Gemfile ../website/Gemfile.lock @@ -83,6 +90,9 @@ tgt_figures := $(patsubst %.tex, %.png,$(src_figures)) %.xbb: %.jpg ebb -x $< +booklet/booklet.pdf: $(src_all) booklet.tex + $(LATEX) -output-directory=booklet booklet.tex + book_serif/book.pdf: $(src_all) $(LATEX) -output-directory=book_serif book.tex @@ -97,7 +107,7 @@ epub/%.epub: %.tex $(ebook_src) cover/cover-page.xbb copy_ebook_files: build_ebook $(RSYNC) book-epub/ bw-book-epub/ -# We not convert SVG to B&W or lower res for now as they are super small +# We do not convert SVG to B&W or lower res for now as they are super small # anyway bw-book-epub/OEBPS/%.jpg: %.jpg mkdir -p $(dir $@) @@ -140,6 +150,8 @@ help: @echo "" @echo "build_ebook: builds only the colour ebook" @echo "" + @echo "build_booklet: builds only the short booklet" + @echo "" @echo "build_bw_ebook: builds the low res black & white ebook" @echo "" @echo "build_sans_serif_pdf: build accessible pdf only" @@ -160,6 +172,8 @@ help: @echo "" @echo "quick_ebook: compiles ebook but runs lulatex only once" @echo "" + @echo "quick_booklet: compiles booklet but runs lulatex only once" + @echo "" @echo "show_tools_version: Show version of tools used on the build machine" @echo "" @echo "print-X: print makefile variable X" @@ -170,10 +184,12 @@ help: # Finally actual project targets (i.e. build pdf and ebooks) -.PHONY: build_pdf build_serif_pdf build_sans_serif_pdf build_ebook +.PHONY: build_pdf build_booklet build_serif_pdf build_sans_serif_pdf build_ebook build_pdf: build_serif_pdf build_sans_serif_pdf +build_booklet: booklet/booklet.pdf + build_serif_pdf: book_serif/book.pdf build_sans_serif_pdf: book_sans_serif/book_sans_serif.pdf @@ -221,6 +237,7 @@ clean_website_build: clean_ebook_build clean: clean_ebook_build clean_figures clean_website_build $(CLEAN) -output-directory=book_serif book.tex $(CLEAN) -output-directory=book_sans_serif book_sans_serif.tex + $(CLEAN) -output-directory=booklet booklet.tex -rm book*/*.{bbl,loc,.run.xml} -rm -rf *book-epub/META-INF -rm -rf *book-epub/OEBPS @@ -230,6 +247,7 @@ mrproper: clean $(CLEAN) -C $(src_figures) $(CLEAN) -C -output-directory=book_serif book.tex $(CLEAN) -C -output-directory=book_sans_serif book_sans_serif.tex + $(CLEAN) -C -output-directory=booklet booklet.tex -rm figures/*.png -rm *.html -rm *.svg @@ -237,13 +255,14 @@ mrproper: clean -rm -rf release/ -rm -rf book_serif/ -rm -rf book_sans_serif/ + -rm -rf booklet/ -rm -rf *book-epub/ -rm -rf $(website_dir) # top level releases rules .PHONY: bake release_serif release_sans_serif -bake: release_serif release_sans_serif +bake: release_serif release_sans_serif release_booklet release: mkdir -p release @@ -256,6 +275,9 @@ release_serif: build_serif_pdf build_ebook build_bw_ebook | release release_sans_serif: build_sans_serif_pdf | release cp book_sans_serif/book_sans_serif.pdf release/TheBreadCode-The-Sourdough-Framework-sans-serif.pdf +release_booklet: build_booklet | release + cp booklet/booklet.pdf release/TheBreadCode-The-Sourdough-Framework-booklet.pdf + # Website stuff .PHONY: html website $(website_dir)/book.html: $(website_src) cover/cover-page.xbb @@ -283,6 +305,9 @@ website: html ../website/_bundle_install_done $(ruby_src) quick: # run latex only once no biber, no references etc... $(LATEX) -e '$$max_repeat=1' -halt-on-error -output-directory=book_serif book.tex +quick_booklet: + $(LATEX) -e '$$max_repeat=1' -halt-on-error -output-directory=booklet booklet.tex + quick_ebook: cover/cover-page.xbb # run latex only once no biber, ref etc... $(EBOOK) --mode draft book.tex diff --git a/book/recipes/flat-bread.tex b/book/recipes/flat-bread.tex new file mode 100644 index 0000000..bb0dcc8 --- /dev/null +++ b/book/recipes/flat-bread.tex @@ -0,0 +1,53 @@ +\subsubsection*{Ingredients} +\begin{tabular}{r@{}rl@{}} +\qty{400}{\gram} &~(\qty{100}{\percent}) & Flour (wheat, rye, corn, whatever + you have at hand)\\ +\qty{320}{\gram} & (\qty{80}{\percent}) & Water, preferably at room + temperature\\ +\qty{80}{\gram} & (\qty{20}{\percent}) & Active sourdough starter\\ +\qty{8}{\gram} & (\qty{2}{\percent}) & Salt\\ +\end{tabular} + +\subsubsection*{Instructions} +\begin{description} +\item[Prepare the dough] In a large mixing bowl, combine the flour and water. + Mix until you have a shaggy dough with no dry spots. + + Add the sourdough starter and salt to the mixture. Incorporate them + thoroughly until you achieve a smooth and homogenized dough. + +\item[Fermentation:] Cover the bowl with a lid or plastic wrap. Allow the dough + to rest and ferment until it has increased by at least \qty{50}{\percent} + in size. Depending on the temperature and activity of your starter, this + can take anywhere from 4 to 24~hours. + +\item[Cooking preparation:] Once the dough has risen, heat a pan over medium + heat. Lightly oil the pan, ensuring to wipe away any excess oil with a + paper towel. + +\item[Shaping and cooking:] With a ladle or your hands, scoop out a portion of + the dough and place it onto the hot pan, spreading it gently like a + pancake. + + Cover the pan with a lid. This traps the steam and ensures even cooking + from the top, allowing for easier flipping later. + + After about 5~minutes, or when the bottom of the flatbread has a + golden-brown crust, carefully flip it using a spatula. + + \emph{Adjusting cook time.} If the flatbread appears too dark, remember to + reduce the cooking time slightly for the next one. Conversely, if it's + too pale, allow it to cook a bit longer before flipping. + + Cook the flipped side for an additional 5~minutes or until it's also + golden brown. + +\item[Storing:] Once cooked, remove the flatbread from the pan and place it on + a kitchen towel. Wrapping the breads in the towel will help retain their + softness and prevent them from becoming overly crisp. Repeat the cooking + process for the remaining dough. + +\item[Serving suggestion:] Enjoy your sourdough flatbreads warm, paired with + your favorite dips, spreads, or as a side to any meal. + +\end{description} diff --git a/makefile b/makefile index 113f326..6e90ac5 100644 --- a/makefile +++ b/makefile @@ -29,6 +29,9 @@ bake: website: $(DOCKER_CMD) "cd /opt/repo/book && make website" +booklet: + $(DOCKER_CMD) "cd /opt/repo/book && make build_booklet" + mrproper: $(DOCKER_CMD) "cd /opt/repo/book && make mrproper"