A personal collection of recipes and the toolchain I built to organize and compile them into a beautiful cookbook.
This repository contains two main components:
A curated collection of recipes organized by category:
- Appetizers - Starters and small plates
- Breads and Pastries - Baked goods and desserts
- Breakfast - Morning meals
- Entrees - Main dishes
- Sauces - Condiments and prepared sauces
- Seasonings - Spice blends and dry seasonings
- Sides - Accompaniments
- Snacks - Quick bites
- Soups - Hearty soups and stews
Each recipe is provided in both LaTeX (.tex) and PDF formats for easy viewing and compilation.
A Python-based build system that converts a collection of LaTeX recipe files into a beautifully formatted cookbook. The toolchain follows a "convention over configuration" philosophy for simplicity.
Key Features:
- Automatically organizes recipes into sections based on directory structure
- Extracts and consolidates LaTeX package requirements
- Supports custom styling and formatting through configuration
- Incremental builds - only processes changed files
- Generates table of contents and optional index
- HTML export - Convert LaTeX cookbook to self-contained HTML with embedded CSS
- Rich console output with detailed build status
For detailed information about the toolchain, see _tools/README.md and _tools/dev-spec.md.
-
Install dependencies:
pip install -r _tools/requirements.txt
-
Configure your book settings in
_tools/book.yml -
Build the cookbook:
python _tools/build.py
The compiled PDF will be created in _build/book.pdf, and if HTML export is enabled, you'll also get _build/html/book.html.
To use this toolchain with your own recipes:
- Create recipe directories (e.g.,
appetizers/,main-dishes/,desserts/) - Add LaTeX recipe files (
.tex) to these directories - Configure
_tools/book.ymlwith your book title and author information - Run
python _tools/build.py
Each recipe should be a complete LaTeX document. See the existing recipes for examples of the format.
Individual recipes are licensed under Creative Commons Attribution-NonCommercial 4.0 International (CC BY-NC 4.0).
This means:
- You may share - Copy and redistribute the material in any medium or format
- You may adapt - Remix, transform, and build upon the material
- Attribution required - You must give appropriate credit, provide a link to the license, and indicate if changes were made
- Non-commercial use only - You may not use the material for commercial purposes
See LICENSE-RECIPES.md for full license text.
The recipe book builder toolchain (_tools/ directory) is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).
This means:
- You may share - Copy and redistribute the material in any medium or format
- You may adapt - Remix, transform, and build upon the material
- Attribution required - You must give appropriate credit, provide a link to the license, and indicate if changes were made
- ShareAlike - If you remix, transform, or build upon the material, you must distribute your contributions under the same license
- Non-commercial use only - You may not use the material for commercial purposes
See LICENSE-TOOLS.md for full license text.
Contributions are welcome! We accept pull requests for:
- New recipes - Submit your favorite recipes in LaTeX format
- Recipe improvements - Suggest modifications, corrections, or improvements to existing recipes
- Recipe formatting - Help improve consistency and formatting
Guidelines for recipe contributions:
- Follow the existing LaTeX recipe format (see existing recipes for examples)
- Place recipes in the appropriate category directory
- Include both
.texsource and compiled.pdffiles - Ensure recipes are complete with ingredients and instructions
- Test that your recipe compiles correctly with the build system
- Bug fixes and feature enhancements
- Documentation improvements
- Code quality improvements
- Performance optimizations
How to contribute:
- Fork the repository
- Create a feature branch for your changes
- Make your changes
- Submit a pull request with a clear description of what you've added or modified
Patrick Morgan
This repository represents both a personal recipe collection and an open-source toolchain for building beautiful cookbooks from LaTeX source files.