baraja-core/mjml-php-server

This package is abandoned and no longer maintained. No replacement package was suggested.
There is no license information available for the latest version (v1.2.1) of this package.

Render your MJML template on custom PHP server.

v1.2.1 2022-04-11 15:02 UTC

README

Integrity check

Imagine you want render your MJML template on your private PHP server, now you can.

Please note: This package is not officially supported as of 2021-04-01. Install MJML manually on the server, or use Docker.

How to install

Install this package by Composer or download manually:

composer require baraja-core/mjml-php-server

Your server must use PHP 7.1 or better and installed MJML by Node modules (internal command is /node_modules/.bin/mjml).

Server configuration

Your server must support the shell_exec() function and Apache or Ngnix.

In your root directory of webserver please configure calling this internal logic. For instance this way (most simply solution):

<?php

require __DIR__ . '/src/MjmlServer.php'; // Path to this package

$cacheDir = __DIR__ . '/cache'; // Or can be null

(new \Baraja\Mjml\MjmlServer($cacheDir))->run();

Now your MJML server is configured.

When you call URI /api/v1/mjml by HTTP request on your domain, you can render your MJML template.

API usage

API must be called by POST method with body parameter template with template.

Final template will be returned by json response.

Some example:

Call URI /api/v1/mjml with parameter:

MJML API Response example

Minimal template configuration:

<mjml>
    <mj-body>
        <mj-section>
            <mj-column>
                <mj-text>Hello World</mj-text>
            </mj-column>
        </mj-section>
    </mj-body>
</mjml>