Skip to content

feat: add PDF generation tooling#2

Open
khubaib-ctrl wants to merge 1 commit intoalejandrobalderas:mainfrom
khubaib-ctrl:feat/pdf-generation
Open

feat: add PDF generation tooling#2
khubaib-ctrl wants to merge 1 commit intoalejandrobalderas:mainfrom
khubaib-ctrl:feat/pdf-generation

Conversation

@khubaib-ctrl
Copy link
Copy Markdown

Adds a full PDF build pipeline for the book:

  • scripts/build-pdf.js — assembles all 18 chapters into a single markdown document with cover page, title page, copyright notice, table of contents, and 7 part-divider pages
  • book-style.css — print stylesheet (Inter headings, Source Serif 4 body, JetBrains Mono code, orange accent, dark code blocks)
  • .md-to-pdf.config.js — md-to-pdf config with cross-platform Chrome path detection and custom header/footer
  • Makefilemake pdf entry point; auto-installs md-to-pdf if missing; make clean-pdf to remove artifacts
  • .gitignore — excludes generated book-combined.md and *.pdf
  • README.md — documents make pdf usage and CHROME_PATH override

Requires Node.js and Google Chrome. Override Chrome path with the CHROME_PATH environment variable if needed.

Adds a full PDF build pipeline for the book:

- `scripts/build-pdf.js` — assembles all 18 chapters into a single
  markdown document with cover page, title page, copyright notice,
  table of contents, and 7 part-divider pages
- `book-style.css` — print stylesheet (Inter headings, Source Serif 4
  body, JetBrains Mono code, orange accent, dark code blocks)
- `.md-to-pdf.config.js` — md-to-pdf config with cross-platform Chrome
  path detection and custom header/footer
- `Makefile` — `make pdf` entry point; auto-installs md-to-pdf if
  missing; `make clean-pdf` to remove artifacts
- `.gitignore` — excludes generated `book-combined.md` and `*.pdf`
- `README.md` — documents `make pdf` usage and CHROME_PATH override

Requires Node.js and Google Chrome. Override Chrome path with
the CHROME_PATH environment variable if needed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant