Integrate figure rendering into the binder CLI so plots can be previewed
without a full Quarto build. Extracts Python code blocks with fig-* labels
from QMD files, renders them to PNG, and outputs a browsable gallery at
_output/plots/<chapter>/. Also fixes the package import chain so `binder`
works correctly as an installed entry point.
- Add book/cli/commands/render.py with RenderCommand class
- Wire into main.py with help table entry and command dispatch
- Add matplotlib>=3.7.0 to pyproject.toml dependencies
- Add book/quarto/_output/ to .gitignore
- Archive standalone render_figures.py to _archive/
Remove redundant ml_ prefix from ml_workflow chapter files and update all
Quarto config references. Consolidate custom scripts into native binder
subcommands and archive obsolete tooling.
Unifies Quarto metadata into shared base/format/volume fragments while carrying through chapter path, asset, and tooling updates to keep the repository consistent and easier to maintain.
Renamed the core physics engine from to to better align with
the book's title and pedagogical goals.
New features:
- Introduced and classes in and .
- Digital twins now carry their own attributes (bandwidth, FLOPS) and
methods (ridge_point, memory_size).
- Global search and replace updated all 16 chapters to use .
- Maintained backward compatibility for legacy constants during migration.
- Revise prose, index entries, and references across all 16 chapters
- Update quarto config (epub/html) for vol1 and vol2
- Add render_figures.py testing script
- Update inject_parts.lua filter and header-includes.tex
- Update notation, appendix_dam, and references.bib
- Remove vol1/vol2 foreword files
- Widen gap between ML systems stack layers and data bar in both
margin and full-size variants so connector lines are clearly visible
- Add D·A·M Intersection Landscape Venn diagram (SVG + PNG) to the
D·A·M Taxonomy appendix with reference table and explanatory prose
- Add forward references to the Venn from Introduction and Part III
- Add learning objective for intersection mapping
- Chapter prose refinements across multiple chapters
- Fix footnotes incorrectly breaking into definition text (appendix_machine, appendix_algorithm)
- Move forbidden footnotes out of callout divs (hw_acceleration, serving, training)
- Convert inline footnote info to inline text where appropriate
- Add fig-alt text to code-cell figures (dl_primer, hw_acceleration, serving, workflow)
- Add fig-cap and fig-alt to TikZ figures (distributed_training, introduction, edge_intelligence, networking, sustainable_ai)
- Fix hook ordering: Black formatter now runs before blank line collapse
- Move footnote definition outside TikZ div in frameworks.qmd
Use Unicode symbols to prevent decimal point stripping:
- × instead of $\times$
- ≈ instead of $\approx$
- ≪ instead of $\ll$
- μ instead of $\mu$
- 10⁹, 10⁶ for powers
LaTeX parsing was interfering with inline Python output,
causing "5.9" to render as "59". Unicode symbols avoid this.
Verified via HTML render - all computed values correct.
Refactors the build chapter script to handle variations in output file names, ensuring accurate success detection and artifact copying.
The changes involve using glob patterns to identify output files (PDF, EPUB, HTML, TeX) instead of relying on fixed names.
This addresses the issue where file names might differ, leading to false negatives during build verification.
Additionally, the commit enhances the artifact copying process by using glob to copy generated PDF and tex files (allowing different names).
Finally, it enhances the debugging process by allowing the use of the --only flag to bypass the normal exclusion list of chapters.
- Update chapter flow and narrative across conclusion, data_selection,
dnn_architectures, model_compression, training, and 10+ other chapters
- Expand references.bib with additional ML systems and foundations entries
- Add new appendix content: assumptions, DAM framework, notation guide
- Update Quarto configs for PDF, HTML, and EPUB builds
- Add audit scripts for figures, tables, listings, and narrative analysis
- Add chapter flow analysis reports for systematic content review
- Include calc modules for hw_acceleration and appendix_algorithm
- Remove deprecated foreword.qmd and vol2 appendix_a.qmd
Content updates:
- Fix cross-references across multiple chapters
- Update glossary entries and JSON files
- Revise about page and frontmatter
- Minor fixes to introduction, frameworks, serving, training chapters
- Update config files for epub, html, and pdf builds
Cleanup:
- Remove testing log artifacts (Machine-Learning-Systems.tex files)
- Update Quarto config for epub, html, and pdf Vol 1 builds
- Rename data_efficiency chapter to data_selection with updated content
- Edit chapters across Vol 1 and Vol 2 for clarity and consistency
- Add references, glossary updates, and new debug build script
- Update pre-commit config and part intro narratives
* Restructure: Move book content to book/ subdirectory
- Move quarto/ → book/quarto/
- Move cli/ → book/cli/
- Move docker/ → book/docker/
- Move socratiQ/ → book/socratiQ/
- Move tools/ → book/tools/
- Move scripts/ → book/scripts/
- Move config/ → book/config/
- Move docs/ → book/docs/
- Move binder → book/binder
Git history fully preserved for all moved files.
Part of repository restructuring to support MLSysBook + TinyTorch.
Pre-commit hooks bypassed for this commit as paths need updating.
* Update pre-commit hooks for book/ subdirectory
- Update all quarto/ paths to book/quarto/
- Update all tools/ paths to book/tools/
- Update config/linting to book/config/linting
- Update project structure checks
Pre-commit hooks will now work with new directory structure.
* Update .gitignore for book/ subdirectory structure
- Update quarto/ paths to book/quarto/
- Update assets/ paths to book/quarto/assets/
- Maintain all existing ignore patterns
* Update GitHub workflows for book/ subdirectory
- Update all quarto/ paths to book/quarto/
- Update cli/ paths to book/cli/
- Update tools/ paths to book/tools/
- Update docker/ paths to book/docker/
- Update config/ paths to book/config/
- Maintain all workflow functionality
* Update CLI config to support book/ subdirectory
- Check for book/quarto/ path first
- Fall back to quarto/ for backward compatibility
- Maintain full CLI functionality
* Create new root and book READMEs for dual structure
- Add comprehensive root README explaining both projects
- Create book-specific README with quick start guide
- Document repository structure and navigation
- Prepare for TinyTorch integration