A powerful system for generating professional LaTeX documents programmatically using Python and Jinja2 templating, with enhanced typography and formatting capabilities.
This project provides a flexible template system that lets you generate beautiful LaTeX documents from structured data. Perfect for:
- Creating customized reports from data analysis
- Generating documentation with consistent formatting
- Automating the production of academic papers
- Creating professional white papers and technical documents
- Producing multi-page tables and complex mathematical content
- Full LaTeX Integration: Leverage LaTeX's powerful typesetting capabilities
- Programmatic Generation: Create documents from Python data structures
- Rich Elements: Support for tables, lists, code blocks, algorithms, callout boxes, and more
- Professional Styling: Beautiful pre-designed styling with customization options
- Drop Cap Support: Elegant typography with first-letter drop caps
- Modular Structure: Organize content in sections and subsections
- Flexible References: Generate bibliographies automatically
- Beautiful Tables: Styled tables with colored headers and alternating rows
- Code Highlighting: Syntax highlighting for multiple programming languages
- Multi-page Tables: Support for tables that span multiple pages
- Advanced Math: Professional mathematical typesetting with AMS packages
- Units & Numbers: Proper formatting of units and numbers with siunitx
- Brand Consistency: Letterspacing and font scaling for brand names
- Better Page Control: Enhanced float placement and management
- Professional Pagination: "Page X of Y" numbering and advanced headers/footers
- Advanced Image Handling: Professional image formatting with shapes, fallbacks, and effects
- Comprehensive Lists: Task lists, priority lists, and custom styling options
- Semantic Box Styling: Info, alert, and success boxes with visual cues
Content lives in the content/ directory and can be organized as chapters, standalone pages, or granular sections. Covers and templates define the shell of the document; your content files are independent and do not need to be part of the cover page.
Typical patterns:
- Chapters:
01-introduction.tex,02-methods.tex,03-results.tex - Single pages/sections:
10-appendix-a.tex,20-acknowledgements.tex
How to include:
\begin{document}
% Cover (optional)
% \templateOneCover{...} or \customCover{...}
% Content loaded on its own pages
\input{content/01-introduction.tex}
\input{content/02-chapter.tex}
% or, to force page breaks between major units
\include{content/03-results} % uses its own .tex and inserts clear pages
\end{document}This project includes comprehensive documentation to help you get the most out of the LaTeX template system:
- GUIDE.md: Complete LaTeX configuration guide with detailed explanations of all available features and usage examples
- dev.md: Development guidelines for maintaining and extending the system