{"slug": "weasyprint", "name": "WeasyPrint", "category": "dev-libs", "category_name": "Libraries and frameworks", "description": "", "recommenders": 4, "commenters": 5, "warners": 0, "score": 3.759, "rising": 0.02, "first": "2025-11-10", "latest": "2026-08-17", "why": "Weasyprint [0] is OSS and supports CSS Paged media", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 4, "neutral": 1, "compare": 0, "warn": 0}, "spark": [1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "Weasyprint [0] is OSS and supports CSS Paged media", "kind": "", "icon": false, "domain": null, "github_repo": "github.com/kozea/weasyprint", "official_url": "https://weasyprint.org", "pricing": "", "aliases": ["WeasyPrint"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 789407842, "item_id": 49337990, "url": "https://news.ycombinator.com/item?id=49337990", "by": "everybodyknows", "date": "2026-08-17", "version": null, "stance": "recommend", "quote": "I used Weasyprint so I could give them self-contained PDF as a keepsake.", "excerpt": "I set out likewise to write a highly structured book with FOSS, therefore: git, some hierarchical plain text format, and a visually rich editor. Markdown could not seem to meet the third point. For instance, progress-related comments that would be stripped from final output were essential, but Markdown's HTML-style comments are intolerably unergonomic, and editors know how to de-emphasize no other syntax. Ended up wi", "context": "", "use_case": "HTML to PDF", "switched_from": "", "story": "How I Over-Engineered My Book"}, {"id": 772547344, "item_id": 48284209, "url": "https://news.ycombinator.com/item?id=48284209", "by": "diamondap", "date": "2026-05-26", "version": null, "stance": "recommend", "quote": "built by own markdown to HTML to PDF/X-1a processor using Python, WeasyPrint, and ghostscript", "excerpt": "Kudos to you for doing that. I've been publishing print and ebooks since 2015, and I can attest to the fact the Word to PDF X-1/a to epub/kindle pipeline is painful. Making minor edits after publication is also painful, as the author notes, and can be error prone if you fail to make identical changes to all formats. The problem was bad enough that I built by own markdown to HTML to PDF/X-1a processor using Python, We", "context": "publishing print and ebooks since 2015", "use_case": "HTML to PDF for book production", "switched_from": "Microsoft Word", "story": "I Bypassed Adobe and Microsoft to Build a Git-Tracked Book Production Pipeline"}, {"id": 755437360, "item_id": 47214835, "url": "https://news.ycombinator.com/item?id=47214835", "by": "Semaphor", "date": "2026-03-01", "version": null, "stance": "recommend", "quote": "Weasyprint [0] is OSS and supports CSS Paged media", "excerpt": "Weasyprint [0] is OSS and supports CSS Paged media. I\u2019m not actually sure why you\u2019d ever use something like this project (or headless chrome for that matter, maybe you need some automated login as well?) which doesn\u2019t. print-css.rock [1] has a good overview of available tools and their features. [0]: https://github.com/Kozea/WeasyPrint [1]: https://print-css.rocks/", "context": "", "use_case": "HTML to PDF with paged CSS", "switched_from": "", "story": null}, {"id": 734101200, "item_id": 45881325, "url": "https://news.ycombinator.com/item?id=45881325", "by": "Leftium", "date": "2025-11-10", "version": null, "stance": "recommend", "quote": "Uses weasyprint instead of wkhtmltopdf", "excerpt": "Interesting, I created two similar projects: 1. markdown resume: - https://leftium.com/resume - plain-text version is human-friendly: https://leftium.com/resume?text - also renders OK on Github: https://github.com/Leftium/leftium.com/blob/main/src/routes/(centered)/resume/resume.md - PDF version is produced by printing from browser. (Try Cmd-P) --- 2. invoice generator - Uses shell scripts instead of make - Uses weas", "context": "", "use_case": "HTML to PDF generation", "switched_from": "wkhtmltopdf", "story": "Show HN: MarkdowntoCV"}]}], "caveats": [], "who": [{"by": "diamondap", "context": "publishing print and ebooks since 2015", "url": "https://news.ycombinator.com/item?id=48284209", "date": "2026-05-26"}], "tags": [], "use_cases": ["html to pdf", "html to pdf for book production", "html to pdf with paged css", "pdf generation", "html to pdf generation"], "compared": [{"slug": "microsoft-word", "name": "Microsoft Word", "co": 1, "switched_from": 1, "switched_to": 0}, {"slug": "git", "name": "Git", "co": 2, "switched_from": 0, "switched_to": 0}], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=49335292", "title": "How I Over-Engineered My Book", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=48238703", "title": "I Bypassed Adobe and Microsoft to Build a Git-Tracked Book Production Pipeline", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47206082", "title": "item 47206082", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46264491", "title": "Ask HN: What Are You Working On? (December 2025)", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=45878979", "title": "Show HN: MarkdowntoCV", "mentions": 1}], "sentiment_by_month": {"2025-11": {"recommend": 1}, "2025-12": {"neutral": 1}, "2026-01": {}, "2026-02": {}, "2026-03": {"recommend": 1}, "2026-04": {}, "2026-05": {"recommend": 1}, "2026-06": {}, "2026-07": {}, "2026-08": {"recommend": 1}, "2026-09": {}, "2026-10": {}}, "versions": [], "version_unnamed": 0, "family_ref": null, "runs_on": null, "lines": [], "quotes": [{"id": 789407842, "item_id": 49337990, "url": "https://news.ycombinator.com/item?id=49337990", "by": "everybodyknows", "date": "2026-08-17", "version": null, "stance": "recommend", "quote": "I used Weasyprint so I could give them self-contained PDF as a keepsake.", "excerpt": "I set out likewise to write a highly structured book with FOSS, therefore: git, some hierarchical plain text format, and a visually rich editor. Markdown could not seem to meet the third point. For instance, progress-related comments that would be stripped from final output were essential, but Markdown's HTML-style comments are intolerably unergonomic, and editors know how to de-emphasize no other syntax. Ended up wi", "context": "", "use_case": "HTML to PDF", "switched_from": "", "story": "How I Over-Engineered My Book"}, {"id": 772547344, "item_id": 48284209, "url": "https://news.ycombinator.com/item?id=48284209", "by": "diamondap", "date": "2026-05-26", "version": null, "stance": "recommend", "quote": "built by own markdown to HTML to PDF/X-1a processor using Python, WeasyPrint, and ghostscript", "excerpt": "Kudos to you for doing that. I've been publishing print and ebooks since 2015, and I can attest to the fact the Word to PDF X-1/a to epub/kindle pipeline is painful. Making minor edits after publication is also painful, as the author notes, and can be error prone if you fail to make identical changes to all formats. The problem was bad enough that I built by own markdown to HTML to PDF/X-1a processor using Python, We", "context": "publishing print and ebooks since 2015", "use_case": "HTML to PDF for book production", "switched_from": "Microsoft Word", "story": "I Bypassed Adobe and Microsoft to Build a Git-Tracked Book Production Pipeline"}, {"id": 755437360, "item_id": 47214835, "url": "https://news.ycombinator.com/item?id=47214835", "by": "Semaphor", "date": "2026-03-01", "version": null, "stance": "recommend", "quote": "Weasyprint [0] is OSS and supports CSS Paged media", "excerpt": "Weasyprint [0] is OSS and supports CSS Paged media. I\u2019m not actually sure why you\u2019d ever use something like this project (or headless chrome for that matter, maybe you need some automated login as well?) which doesn\u2019t. print-css.rock [1] has a good overview of available tools and their features. [0]: https://github.com/Kozea/WeasyPrint [1]: https://print-css.rocks/", "context": "", "use_case": "HTML to PDF with paged CSS", "switched_from": "", "story": null}, {"id": 740368808, "item_id": 46273050, "url": "https://news.ycombinator.com/item?id=46273050", "by": "pk3", "date": "2025-12-15", "version": null, "stance": "neutral", "quote": "WeasyPrint was deadlocking a single-worker setup because it fetched the logo via HTTP.", "excerpt": "https://charityrecord.com I'm working on a charitable donation tracker for taxpayers. My wife and I used Intuit's ItsDeductible for years until it shut down in October. With a little encouragement, I built Charity Record. The stack is Django 5.2 (I know, I know, I'm looking at 6 now), Postgres, and HTMX + Alpine.js for interactivity. I'm using Polar for subscriptions. It's running on the $12/mo DigitalOcean droplet. ", "context": "", "use_case": "PDF generation", "switched_from": "", "story": "Ask HN: What Are You Working On? (December 2025)"}, {"id": 734101200, "item_id": 45881325, "url": "https://news.ycombinator.com/item?id=45881325", "by": "Leftium", "date": "2025-11-10", "version": null, "stance": "recommend", "quote": "Uses weasyprint instead of wkhtmltopdf", "excerpt": "Interesting, I created two similar projects: 1. markdown resume: - https://leftium.com/resume - plain-text version is human-friendly: https://leftium.com/resume?text - also renders OK on Github: https://github.com/Leftium/leftium.com/blob/main/src/routes/(centered)/resume/resume.md - PDF version is produced by printing from browser. (Try Cmd-P) --- 2. invoice generator - Uses shell scripts instead of make - Uses weas", "context": "", "use_case": "HTML to PDF generation", "switched_from": "wkhtmltopdf", "story": "Show HN: MarkdowntoCV"}]}