Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Hackable CLI tool for converting Markdown files to PDF using Node.js and headless Chrome.
| Date | Stars |
|---|---|
| 2026-07-24 | 1919 |
| 2026-07-25 | 1920 |
| 2026-07-28 | 1920 |
| 2026-07-30 | 1920 |
| 2026-08-06 | 1920 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.00%/day
# Markdown to PDF [](https://github.com/simonhaenisch/md-to-pdf/actions?query=branch%3Amaster) [](https://www.npmjs.com/md-to-pdf)  **A simple and hackable CLI tool for converting markdown to pdf**. It uses [Marked](https://github.com/markedjs/marked) to convert `markdown` to `html` and [Puppeteer](https://github.com/GoogleChrome/puppeteer) (headless Chromium) to further convert the `html` to `pdf`. It also uses [highlight.js](https://github.com/isagalaev/highlight.js) for code highlighting. The whole source code of this tool is ~only \~250 lines of JS~ ~500 lines of Typescript and ~100 lines of CSS, so it is easy to clone and customize. **Highlights:** - Concurrently convert multiple Markdown files - Watch mode - Use your own or remote stylesheets/scripts - Front-matter for configuration - Headers and Footers - Page Breaks - Syntax highlighting in code blocks - Extend the options of the underlying tools - Programmatic API - Supports `stdio` - Convert HTML (or [inline HTML](https://daringfireball.net/projects/markdown/syntax#html)) to PDF ## Installation **Option 1: NPM** ```sh npm i -g md-to-pdf ``` **Option 2: Git** If you want to have your own copy to hack around with, clone the repository instead: ```sh git clone "https://github.com/simonhaenisch/md-to-pdf" cd md-to-pdf npm link # or npm i -g ``` Then the commands `md-to-pdf` and `md2pdf` (as a shorthand) will be globally available in your cli. Use `npm start` to start the TypeScript compiler (`tsc`) in watch mode. ## Update If you installed via npm, run `npm i -g md-to-pdf@latest` in your CLI. If you cloned this repository instead, you can simply do a `git pull` to get the latest changes from the master branch, then do `npm run build` to re-build. Unless there have been changes to packages (i. e. `package-lock.json`), you don't need to re-install the package (because NPM 5+ uses symlinks, at least on Unix systems). ## Usage ``` $ md-to-pdf [options] path/to/file.md Options: -h, --help ............... Output usage information -v, --version ............ Output version -w, --watch .............. Watch the current file(s) for changes --watch-options .......... Options for Chokidar's watch call --basedir ................ Base directory to be served by the file server --stylesheet ............. Path to a local or remote stylesheet (can be passed multiple times) --css .................... String of styles --document-title ......... Name of the HTML Document. --body-class ............. Classes to be added to the body tag (can be passed multiple times) --page-media-type ........ Media type to emulate the page with (default: screen) --highlight-style ........ Style to be used by highlight.js (default: github) --marked-options ......... Set custom options for marked (as a JSON string) --pdf-options ............ Set custom options for the generated PDF (as a JSON string) --launch-options ......... Set custom launch options for Puppeteer --gray-matter-options .... Set custom options for gray-matter --port ................... Set the port to run the http server on --md-file-encoding ....... Set the file encoding for the markdown file --stylesheet-encoding .... Set the file encoding for the stylesheet --as-html ................ Output as HTML instead --config-file ............ Path to a JSON or JS configuration file --devtools ............... Open the browser with devtools instead of creating PDF ``` The pdf is generated into the same directory as the source file and uses the same filename (with `.pdf` extension) by default. Multiple files can be specified by using shell globbing, e. g.: ```sh md-to-pdf ./**/*.md ``` _(If you use bash, you might need to enable the `glob
Excerpt of 14,687 characters
Read on GitHub393
64
1
1
1
1
1
1
1
1
1
Would you bet a product on this? Bounded 0–100 and slow moving.
matched fp:129aab81c7d10d82, topic:puppeteer