Two faces, one source. Like the Roman god Janus, this LaTeX template looks both ways—generating a detailed report and presentation from the same content, with clickable hyperlinks between them.
| File | Purpose |
|---|---|
main.tex |
Configuration, title, author, packages |
report_sections.tex |
Full report content |
presentation_slides.tex |
Slide content |
shared_elements.tex |
Reusable figures/tables/equations |
compile.bat |
Compilation script |
figures/ |
Image files |
- Compile:
.\compile.bat→ generatesreport.pdf+presentation.pdf - Customize
main.tex: title, author, institution - Add content to
report_sections.texandpresentation_slides.tex - Recompile:
.\compile.bat
Define figures/tables/equations once in shared_elements.tex, use in both formats:
% In shared_elements.tex - define once:
\newcommand{\figureMyPlot}{\includegraphics{figures/plot.png}}
\newcommand{\tableResults}{\begin{tabular}...\end{tabular}}
\newcommand{\eqModel}{y = mx + b}
% In report - use it:
\begin{figure}
\figureMyPlot
\caption{...}
\end{figure}
% In presentation - same command:
\begin{frame}
\figureMyPlot
\end{frame}Change once → updates everywhere!
- Push to GitHub and enable Pages (Settings → Pages → main branch)
- Update
\reporturlintemplate_main.texwith your GitHub Pages URL - Recompile and push PDFs
Result: Slides link to specific report sections online!
To test this out download and open a copy of the presentation.pdf file, navigate to page 6 which references the First-Order Thermal Response Model. At the bottom of the slide there is a hyperlink: → Full derivation and mathematical details which should bring you to the appropiate report section with the full details!
Change theme: Edit \usetheme{Madrid} in main.tex
Add section: Copy existing section pattern in report/slides, update \hypertarget{}
Add figure: Define \newcommand{\figureX}{...} in shared_elements.tex, use in both formats
main.tex checks \ifdefined\ispresentation:
- NO →
\documentclass{article}→ loadsreport_sections.tex→report.pdf - YES →
\documentclass{beamer}→ loadspresentation_slides.tex→presentation.pdf
Both load shared_elements.tex for reusable content.
Recommended method: Use Adobe's free PDF to PowerPoint converter
- Upload
presentation.pdfto Adobe's converter - Download the converted
.pptxfile - Clean up any formatting as needed
- Merge with team slides in PowerPoint
- No pdflatex: Install MiKTeX
- Errors: Check
.logfiles - Hyperlinks fail: Verify GitHub Pages URL in
\reporturl
Template v1.0 - December 2025