Early Access Release
Design Documents, not Templates
Pixel-perfect PDFs,
generated from your
data.
Design invoices, reports, certificates and contracts in the same visual builder you already know. Bind your data, render on the server, ship the PDF — with the engine of your choice.
use Ccast\Tagixo\Models\PdfTemplate;
use Barryvdh\DomPDF\Facade\Pdf;
$template = PdfTemplate::where('slug', 'invoice')->firstOrFail();
return Pdf::loadHtml($template->renderHtml())
->setPaper($template->paper_size, $template->orientation)
->stream('invoice.pdf');
Documents that look designed, not generated
Visual WYSIWYG canvas
Build complex layouts with a drag-and-drop interface that mirrors your final output.
Data-driven
Inject dynamic content using easy tokens like date (inside double brackets) or custom object keys.
Engine-agnostic
Compatible with DomPDF, Browsershot, or any HTML-to-PDF renderer of your choice.
Print setup
Granular control over paper size, orientation, and precise margins for physical print safety.
Reusable templates
Manage your documents with a slug-based system for easy API retrieval.
Full design control
Leverage modern CSS for layouts while maintaining strict print-safe style compliance.
A document builder that fits how you work
Design it visually
Modules you already use, no print-CSS guesswork. What you see is exactly what gets rendered.
Fill it with your data
Tokens for site name, dates, Eloquent models. Link your data once, automate forever.
Render it your way
Pipe clean HTML into DomPDF or Browsershot. You have total control over the rendering pipeline.
From invoices to certificates
Document Types
Available Modules
Heading
Text
Table
Image
Gallery
Pricing table
Divider
Spacer
Icon
Icon list
"Interactive modules — sliders, forms, video — are left out on purpose. A PDF is static by nature."
Generate from your data
One call from template to PDF. Look up a saved template, render its HTML, hand it to your engine. The tokens you placed in the builder are already resolved — you just stream the file.
"Prefer Chromium-grade rendering? Swap in Browsershot::html($template->renderHtml()). Same HTML, different engine."
use Ccast\Tagixo\Models\PdfTemplate;
use Barryvdh\DomPDF\Facade\Pdf;
$template = PdfTemplate::where('slug', 'invoice')->firstOrFail();
return Pdf::loadHTML($template->renderHtml())
->setPaper($template->paper_size, $template->orientation)
->stream('invoice.pdf');
Set up for print
Paper
A4, Letter, and custom dimensions
Orientation
Portrait or Landscape
Margins
CSS units: cm, mm, in
Flow
Native multi-page overflow
Architected for your stack
Server-side, headless
DomPDF integration means no browser is required on your server. Light and fast.
Your engine, your rules
We emit clean, semantic HTML. You own the rendering and final output delivery.
Standard Laravel
Works seamlessly with Laravel's response stream, mailers, or file storage disks.