π Professional template for creating interactive academic e-books with Quarto
This template provides everything you need to create a professional, interactive academic e-book:
- Outcome-Based Education (OBE) aligned - Learning outcomes drive content
- Flipped classroom ready - Pre-reading, in-class, post-class materials
- Comprehensive chapters with consistent structure
- Hands-on labs with step-by-step instructions
- Assessment framework - Pre-quizzes, self-checks, problem sets
- Reference materials - Appendices, glossary, cheatsheets
- Multi-format output - HTML, PDF, EPUB
- Responsive design - Desktop, tablet, mobile friendly
- Dark mode support - Built-in theme switching
- Interactive elements - Collapsible sections, tabsets, callouts
- Code highlighting - Syntax highlighting with copy buttons
- Diagram standards - Consistent visual language
- Template files - Chapter and lab templates ready to use
- Diagram templates - Mermaid and Matplotlib examples
- Quality guidelines - Comprehensive documentation
- Best practices - Code standards, naming conventions
- Build scripts - Automated testing and validation
Required:
- Quarto 1.3+
- Python 3.10+
- LaTeX distribution (TinyTeX recommended)
For PDF rendering (Mermaid diagrams):
- Chrome/Chromium browser
1. Clone or Download Template
# Option A: Clone from GitHub
git clone https://github.com/yourusername/quarto-academic-ebook-template.git
cd quarto-academic-ebook-template
# Option B: Download ZIP and extract
# Then navigate to the directory2. Install Quarto (if not already installed)
# Follow instructions at: https://quarto.org/docs/get-started/3. Install TinyTeX (for PDF generation)
quarto install tinytex4. Install Python Dependencies (if using Python code)
pip install -r requirements.txt5. Preview Your E-Book
quarto previewYour e-book will open in browser at http://localhost:4200
quarto-academic-ebook-template/
βββ README.md # This file
βββ QUICK_START.md # Step-by-step setup guide
βββ LICENSE # CC BY-SA 4.0 license
βββ _quarto.yml # Main configuration
βββ index.qmd # Landing page
βββ preface.qmd # Course overview
βββ how-to-use.qmd # User guide for students
β
βββ chapters/ # Theory chapters
β βββ _chapter-template.qmd # Chapter template
β βββ 01-sample-chapter.qmd # Example chapter
β
βββ labs/ # Hands-on exercises
β βββ _lab-template.qmd # Lab template
β βββ lab01-sample-lab.qmd # Example lab
β
βββ assessments/ # Assessment materials
β βββ index.qmd
β βββ pre-quizzes.qmd
β βββ problem-sets.qmd
β βββ quiz-bank.qmd
β βββ project-guidelines.qmd
β
βββ appendices/ # Reference materials
β βββ index.qmd
β
βββ images/ # Diagrams and figures
β βββ templates/ # Diagram templates
β βββ mermaid-flowchart-template.mmd
β βββ mermaid-sequence-template.mmd
β βββ matplotlib-plot-template.py
β βββ matplotlib-bar-chart-template.py
β βββ ec-plot-template.py
β
βββ styles/ # Custom styling
β βββ custom.scss # Custom styles
β βββ ieee.csl # Citation style
β
βββ latex/ # PDF customization
β βββ preamble.tex
β
βββ scripts/ # Build and utility scripts
βββ data/ # Data files for examples
βββ code/ # Standalone code files
βββ instructor/ # Instructor-only materials
β
βββ docs/ # Template documentation
βββ TEMPLATE_GUIDE.md # Complete usage guide
βββ DIAGRAM_STANDARDS.md # Visual design standards
βββ DIAGRAM_QUICK_REFERENCE.md
βββ OBE_INTEGRATION.md # OBE implementation guide
Edit the main configuration file:
book:
title: "Your Course Title"
subtitle: "Your Course Subtitle"
author:
- name: "Your Name"
affiliation: "Your Institution"
date: "2026"Key settings to customize:
- Title and author information
- Chapter structure and organization
- Theme colors and styling
- Output formats (HTML, PDF, EPUB)
- Language (Indonesian by default, change to English if needed)
Use the chapter template as starting point:
# Copy template
cp chapters/_chapter-template.qmd chapters/01-your-topic.qmd
# Edit the new file
# Update title, learning objectives, contentChapter structure (see template for details):
- Learning objectives
- Pre-reading checklist
- Introduction
- Content sections with examples
- Summary and key takeaways
- Self-check questions
- Practice problems
Use the lab template:
# Copy template
cp labs/_lab-template.qmd labs/lab01-your-lab.qmd
# Customize contentLab structure:
- Overview and objectives
- Background/theory review
- Pre-lab preparation
- Step-by-step procedure with checkpoints
- Optional challenges
- Submission requirements
- Troubleshooting section
- part: "Your Part Title"
chapters:
- chapters/01-your-topic.qmd
- chapters/02-another-topic.qmd# Preview with live reload
quarto preview
# Render all formats
quarto render
# Render specific format
quarto render --to html
quarto render --to pdf
quarto render --to epubThis template includes diagram templates and standards for consistency.
For flowcharts, sequence diagrams, and more:
```{mermaid}
%%| label: fig-your-diagram
%%| fig-cap: "Description of diagram"
%%| fig-alt: "Accessibility description"
%%| code-fold: true
flowchart LR
A[Start] --> B[Process]
B --> C[End]
```Templates available:
images/templates/mermaid-flowchart-template.mmdimages/templates/mermaid-sequence-template.mmd
For plots and visualizations:
import matplotlib.pyplot as plt
import numpy as np
# See templates in images/templates/See: docs/DIAGRAM_STANDARDS.md for complete guidelines
DO:
- β Align content with learning outcomes
- β Use consistent terminology
- β Include real-world examples
- β Provide worked examples
- β Add self-check questions
- β Use interactive elements (callouts, tabsets)
DON'T:
- β Assume prerequisite knowledge
- β Skip explanations
- β Use jargon without defining
- β Overcomplicate examples
- Follow language-specific style guides (PEP 8 for Python)
- Include docstrings and comments
- Test all code before including
- Provide complete, runnable examples
- Use consistent color palette
- Follow naming convention:
chXX-figYY-description.ext - Include fig-cap and fig-alt for accessibility
- Use templates for consistency
See: docs/DIAGRAM_STANDARDS.md for details
This template is designed for Outcome-Based Education:
- Each chapter specifies CLO (Course Learning Outcomes) alignment
- Objectives are measurable and assessable
- Progressive skill building
- Pre-reading quizzes check prerequisite knowledge
- Self-checks verify immediate understanding
- Problem sets assess application
- Labs evaluate practical skills
- Projects measure comprehensive mastery
- Pre-class materials (videos, reading, pre-quiz)
- In-class activities (discussion, collaboration)
- Post-class practice (labs, problem sets)
See: docs/OBE_INTEGRATION.md for implementation guide
Edit styles/custom.scss to customize appearance:
// Change primary color
$primary-color: #1a5f7a;
// Adjust spacing, fonts, etc.Change language in _quarto.yml:
# Indonesian (default)
lang: id
# English
lang: enUpdate crossref terms as needed.
Enable interactive code cells (requires additional setup):
execute:
echo: true
eval: trueEdit latex/preamble.tex for LaTeX-specific customization.
Comprehensive guides are in the docs/ folder:
| Document | Description |
|---|---|
| TEMPLATE_GUIDE.md | Complete usage instructions |
| DIAGRAM_STANDARDS.md | Visual design guidelines (40 pages) |
| DIAGRAM_QUICK_REFERENCE.md | Quick diagram lookup (3 pages) |
| OBE_INTEGRATION.md | OBE implementation guide |
| QUICK_START.md | Step-by-step setup |
This is an open template for educational use. Improvements welcome!
- Report bugs or issues
- Suggest improvements
- Share your e-book examples
- Improve documentation
- Add new templates or examples
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
This template is licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0).
You are free to:
- Share - Copy and redistribute in any medium or format
- Adapt - Remix, transform, and build upon the material
Under the following terms:
- Attribution - Give appropriate credit, provide link to license
- ShareAlike - Distribute under same license
- No additional restrictions - No legal/technical measures restricting what license permits
- Documentation: Check
docs/folder first - Issues: GitHub Issues
- Discussions: GitHub Discussions
- Quarto Help: Quarto Documentation
This template builds upon:
- Quarto - Open-source scientific publishing system
- Best practices from academic e-book projects
- Contributions from educators and developers
- Student feedback from pilot courses
E-books built with this template:
- [Example 1] - Description and link
- [Example 2] - Description and link
- [Your e-book here!] - Share your work
Future improvements planned:
- Video tutorial series
- More diagram templates
- Additional language support
- CI/CD workflows
- Automated testing examples
- GitHub Pages deployment guide
- π Quarto Documentation
- π¨ Mermaid Live Editor
- π Python Documentation
- π Markdown Guide
- π OBE Resources
Template Version: 1.0 Last Updated: December 2025 Maintained by: [girnot/Lab Pluto Swiss-Seeng]
π If this template helps you, please give it a star on GitHub!
Built with β€οΈ for educators and learners