Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Dynamicpdf Plugin

Dynamicpdf Plugin Laravel Package

renatio/dynamicpdf-plugin

Generate dynamic PDF documents in October CMS with Twig-based templates, backend management, and flexible PDF generation for orders, invoices, reports, and other tailored outputs.

View on GitHub
Deep Wiki
Context7

DynamicPDF is an October CMS plugin for generating PDF documents from Twig-powered HTML templates. Define reusable PDF layouts in the backend, pass data at render time, and produce downloadable or streamable PDFs—ideal for invoices, reports, tickets, and certificates.

  • Manage PDF templates directly in the October CMS backend
  • Render dynamic content with Twig variables and filters
  • Generate, download, or stream PDFs from frontend and backend code
  • Reuse layouts and partials for consistent documents
  • Convert HTML/CSS to PDF with Dompdf
Frequently asked questions about Dynamicpdf Plugin
Is renatio/dynamicpdf-plugin a Laravel package I can install in any Laravel application?
No. It is an October CMS plugin that depends on october/system and october/rain, installs under plugins/, and boots through October's Plugin.php lifecycle, so it will not resolve or work in a vanilla Laravel app. If you are building in plain Laravel, use barryvdh/laravel-dompdf or spatie/laravel-pdf instead. Treat October CMS as a hard prerequisite before evaluating this package.
How do I install and register the DynamicPDF plugin in October CMS?
Install it with Composer into an existing October CMS project, then register the plugin through the October backend or your plugin registration flow and apply any migrations it ships. After registration you define a PDF template and optional layout in the backend, then render it through the provided component or PDF facade with a data array. The first working document is typically a matter of days, not weeks, provided your October and PHP versions are compatible.
How do I set paper size, orientation, and margins for a generated PDF?
The plugin exposes paper size, orientation, and margin settings when you define a template or configure the component, so you can set A4 or Letter, portrait or landscape, and page spacing per document type. Configure these per template rather than hard-coding them in application code so non-developers can adjust output safely. Always test the resulting layout with real content, because Dompdf handles page breaks and wide tables less gracefully than browser engines.
Can non-developers edit PDF templates in the October CMS backend without a deployment?
Yes. PDF templates, layouts, and partials are first-class backend-managed content edited as HTML and Twig, which is the plugin's main advantage for invoices, reports, and certificates. That also creates governance risk: database-stored templates sit outside version control and outside your normal deploy and rollback path. Put a review and backup process around template changes before letting marketing or operations edit production output.
Which PDF rendering engine does this plugin use, and what CSS support can I expect?
It uses Dompdf, a pure-PHP renderer with no binary dependency and no headless browser to operate. That makes deployment simple, but CSS support is weaker than wkhtmltopdf or Chrome, especially for flexbox, advanced page breaks, and complex table layouts. Validate headers, footers, custom fonts, and multi-page tables against your real templates before committing to the styling ceiling.
Does renatio/dynamicpdf-plugin support October CMS v3 and Laravel 9 or 10?
This is unverified and should be confirmed before adoption. The evaluation flags a future-dated release entry and a small maintenance footprint, so check the composer.json constraints, release tags, and commit history against your October and PHP versions. If v3 or Laravel 10 support is missing, you are either pinning to October v2 or owning a fork.
Can PDF generation run in a queue instead of blocking the HTTP request?
The documented happy path renders synchronously and returns a stream, download, or response, so generation happens inside the request by default. For large invoices or reports, dispatch an October queue job that calls the PDF facade, writes the result to a storage disk, and notifies the user when it is ready. Confirm timeout and memory behavior under Dompdf before relying on synchronous rendering in production.
How should I handle images, fonts, and CSS assets in Dompdf templates?
Dompdf resolves assets in a headless context, so reference images, fonts, and stylesheets through absolute URLs or local disk paths that are reachable from the rendering process. Remote asset fetching adds latency and creates an SSRF surface, so prefer bundled local assets or a trusted storage disk. Test font embedding and image paths in the same environment where queue workers run, not just on your local machine.
What are the alternatives to this plugin for PDF generation in Laravel or October CMS?
In vanilla Laravel, barryvdh/laravel-dompdf and spatie/laravel-pdf are the usual choices, with spatie/laravel-pdf offering a more modern driver approach. In October CMS you can use this plugin or build an in-house Dompdf integration, and you can also consider wkhtmltopdf-based tools if you need stronger CSS at the cost of a binary dependency. Choose based on whether backend-editable Twig templates are valuable enough to justify October-specific coupling.
Is this plugin safe to depend on in production given its maintenance and bus factor?
The risk is real: roughly 30 stars, zero dependents, and a single maintainer mean little downstream validation and slow community patching. The MIT license lets you fork and vendor the code, but that shifts maintenance cost onto your team. Pin a known-good version, start with a low-stakes document such as a receipt or internal report, and keep a fallback rendering path before using it for invoices or contracts.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource