# PDFME
TypeScript-based PDF generator and React-based UI. Open source, developed by the community, and completely free to use under the MIT license!
## Features | Fast PDF Generator | Easy PDF Template Design | Simple JSON Template | | ----------------------------------------------------------------------------------------------------- | ------------------------------------------------------ | ----------------------------------------------------------------- | | Works on Node and in the browser. Use templates to generate PDFs—complex operations are not required. | Anyone can easily create templates using the designer. | Templates are JSON data that is easy to understand and work with. | ## Custom Feature Requests While pdfme is an open-source project released under the MIT License, we are open to considering custom feature additions for a fee. **If you are willing to pay, we can evaluate and implement your requested features.** Please note that any additional functionality will always be released as open source. If this approach works for you, please [contact us](https://app.pdfme.com/contact). For a detailed list of supported features, please refer to the [Supported Features](https://pdfme.com/docs/supported-features) page. ## Documentation For complete documentation on pdfme, please refer to the [Getting Started](https://pdfme.com/docs/getting-started) guide. For the planned next major release changes, see the [migration guide draft](website/docs/migration-v6.md). Need interactive help? Use [DeepWiki](https://deepwiki.com/pdfme/pdfme) to ask questions about pdfme's documentation and source code directly. ## CLI Workflow For agentic workflows, local verification, or JSON-first template iteration, use [`@pdfme/cli`](packages/cli/README.md). - `pdfme validate`: validate template or unified job JSON before generation - `pdfme doctor`: diagnose runtime, font, `basePdf`, and output-path issues before `generate` - `pdfme generate --image --grid`: generate PDFs and inspect layout via rendered page images - `pdfme examples --withInputs`: export official example assets as a unified job you can edit and regenerate ## Examples Using pdfme If you're looking for code examples to get started with pdfme, check out the [pdfme-playground website](https://playground.pdfme.com/) and the [playground source code](https://github.com/pdfme/pdfme/tree/main/playground). Setup instructions can be found in the [DEVELOPMENT.md](DEVELOPMENT.md) file. ## Cloud Service Option While pdfme is a powerful open-source library, we understand that some users might prefer a managed solution. For those looking for a ready-to-use, scalable PDF generation service without the hassle of setup and maintenance, we offer pdfme Cloud. **[Try pdfme Cloud - Hassle-free PDF Generation](https://app.pdfme.com?utm_source=github&utm_content=readme-cloud)** pdfme Cloud provides all the features of the open-source library, plus: - PDF generation at scale without infrastructure management - Hosted WYSIWYG template designer - Simple API integration - Automatic updates and maintenance _pdfme will always remain open source. The cloud service is an optional offering for those who prefer a managed solution._ ## Sponsors Support this project by becoming a sponsor. Your logo will appear here with a link to your website. | [](https://github.com/ProgressLabIT) | [