To convert a GitHub README to PDF, paste the repository link (or owner/repo) into the box above and click Fetch README. Check the preview, click Download PDF and choose "Save as PDF". Relative image and link paths are rewritten to full GitHub addresses first, so logos, screenshots and badges still appear in the PDF. You can also paste or upload a README.md directly.
What does the output look like?
Relative paths that would break off GitHub

See [CONTRIBUTING](CONTRIBUTING.md).
See [CONTRIBUTING](https://github.com/
owner/repo/blob/main/CONTRIBUTING.md).The branch is whatever the README was served from, not always main. Code blocks are left alone, so example paths inside them are not changed.
A typical README
# my-project
[](...)
```bash
npm install -g my-project
```
| Flag | Default |
|------|---------|
| --out | ./dist |The heading, the badge as an image, the install
command in a highlighted code box and a bordered
table. Click Sample above to see it.How is this different from printing the GitHub page?
Printing the repository page from your browser prints the page around the README too. This page fetches only the README Markdown, renders it with a print stylesheet and lets you choose a style, so the PDF contains the document and nothing else.
Does GitHub-flavored Markdown come through?
Tables, task lists, fenced code with syntax highlighting, footnotes, $...$ math and ```mermaid diagrams all render. Raw HTML that READMEs use for layout, such as <p align="center"> and <img width="200">, is kept; scripts and event handlers in fetched HTML are stripped. GitHub-only extras such as > [!NOTE] alert boxes and :emoji: shortcodes print as plain text.
Can I convert a README with the command line instead?
Yes, with Pandoc: pandoc README.md -o README.pdf. Its default PDF route needs a LaTeX engine installed, relative images must exist on disk next to the file, and Mermaid needs a filter. It is the better choice for many files. See Markdown to PDF for a fuller comparison.
How are tables, code, front matter and other edge cases handled?
| Input | What you get |
|---|---|
| Relative image (docs/a.png, ./a.png, /a.png) | Rewritten to raw.githubusercontent.com on the README's branch |
| github.com/.../blob/...png image links | Rewritten to the raw file so the image loads |
| Relative links (CONTRIBUTING.md) | Rewritten to github.com so they work from the PDF |
| Badges (shields.io etc.) | Printed as images |
| > [!NOTE] alerts, :emoji: codes | Printed as a plain quote and plain text |
| tree/<branch>/<folder> links | Loads the repository's main README, not the folder's |
| Private repository | Not reachable. Paste the raw Markdown instead |
Maintained by Ankit Aglawe. Last updated .
Related Tools
Need a different format? See every tool on the Markdown converter page, or go back to the MDConvert home page.