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
Mjml Backend Components

Mjml Backend Components Laravel Package

juaniquillo/mjml-backend-components

MJML backend components for Laravel provides ready-made building blocks for composing responsive MJML email templates in PHP, so you can assemble reusable components and render clean HTML emails without hand-writing markup.

View on GitHub
Deep Wiki
Context7

At a glance

Frequently asked questions about Mjml Backend Components
How do I install juaniquillo/mjml-backend-components in a Laravel app?
Install it with Composer by running composer require juaniquillo/mjml-backend-components. The package has a low code footprint and is expected to be discovered automatically by Laravel, with views or config publishable through artisan vendor:publish if the repository provides them. Check the README on the tagged release for any publish step or manual service provider registration before wiring it into a mailable.
Does juaniquillo/mjml-backend-components require Node.js or the MJML CLI at runtime?
That is the first thing to verify in the source: check whether MJML is compiled in pure PHP or by shelling out to the mjml Node CLI. If it shells out, every environment including queue workers and the production container image needs Node plus the mjml binary installed. This single decision determines whether the package is a pure Composer dependency or a change to your deployment topology.
Which Laravel and PHP versions does this MJML package support?
Laravel 10, 11 and 12 on PHP 8.1+ is the presumed matrix, but it is not confirmed in the package overview. Open composer.json in the repository and read the exact illuminate/support and php constraints on the tag you intend to use. Do not assume compatibility with older Laravel releases or with PHP 8.0 and below.
Is version 0.1.0 of this package safe to use in production emails?
At v0.1.0 the public API is not stabilized: semver permits breaking changes in minor and patch releases, and the component vocabulary is still being filled in as missing MJML tags land. Treat it as pilot-only and try it behind a feature flag on one low-risk transactional email such as a password reset or receipt. Pin the exact version in composer.json rather than using a caret constraint.
How do these MJML components work with Laravel Mailables and Notifications?
The package sits at the rendering layer, composing MJML templates and outputting email-client-safe HTML that a Mailable or Notification can use as its view or body. It does not touch transport, so your existing Mailgun, SES or Postmark drivers keep working unchanged. Whether components are registered as Blade components, class-based builders or a facade should be confirmed in the README.
Does juaniquillo/mjml-backend-components support all MJML tags?
No. Open "Missing tags" work in the repository indicates the component vocabulary is still incomplete at v0.1.0, and unsupported elements may render degraded or as raw markup. Snapshot-test each template you adopt so gaps surface before your users see them. Published and overridable views or config are the escape hatch if a specific tag renders incorrectly.
Are there alternatives to this package for building MJML emails in Laravel?
Yes. You can compile MJML yourself with the Node CLI as a build step, use a generic MJML wrapper, or keep hand-written Blade email templates. This package's advantage is a small, forkable surface area that maps MJML components into Laravel's view layer. Check for collisions with any MJML or email-builder package already in your composer.json before adding it.
Does this package have tests covering the rendered HTML output?
The repository shows CI and Dependabot activity, but whether the suite asserts rendered output on the tagged commit needs verification. Regardless of what upstream covers, add your own snapshot tests that assert the generated HTML for every template you adopt. That is your regression guard against missing tags and future breaking changes.
Is there an HTML injection risk in the emails this package renders?
A changelog entry titled "Attribute scaping" (escaping) suggests values interpolated into email HTML attributes may not have been escaped in earlier versions, which is an injection vector into rendered email bodies. Confirm the fix is complete and covered by tests before placing user-supplied data into attributes. Escape untrusted values yourself as defence in depth.
Who maintains juaniquillo/mjml-backend-components and what license does it use?
It is effectively a single-maintainer package with a bus factor of one, no commercial support and no LTS commitment; GitHub issues are the only escalation path. Confirm the license in the repository before adopting. Budget for your team to fork and patch it, since the small surface area makes that feasible and is the main mitigant.
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.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
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