slickss-email-builder
v1.0.0-alpha-1
Published
Build emails
Downloads
4
Readme
slickss-email-builder
A npm module that helps you generate emails in HTML.
Install
npm i --save @slickss/email-builder
How to use
import { EmailBuilder } from ' @slickss/email-builder';
// create your email from existing themes
let html = EmailBuilder.renderPage(themeName, pageName, data);
// if you decide to build it on the spot by yourself
let html = EmailBuilder.renderString('<p><%= hello %></p>', { hello:'hello' } );
All available themes at views.
You can also check Demo for an example.
Run the Demo locally
Checkout the repository and type:
npm run i && npm run build && npm run start
Tests
Run tests with: npm run test
Developing & contributing
Creating a theme
All theme is made by 2 folders, partials
and pages
inside a parent folder named with the theme name.
This last folder should be inside views. It is structured like this:
views
│ sample-theme
│ my-another-theme
│
└───my-new-theme
│ pages
│ partials
As an example you can check how the sample-theme is structured.
Pages will be .ejs
files. Each one of these should represent a page.
If you want to reuse some parts of the code between pages you should consider creating a partial.
EJS does not use any kind of protection against circular dependencies, take care.
To know a bit more how EJS works you can check it here.
Developing a new test
all tests should start with:
process.env.NODE_ENV = 'test'
use a good name
do not rely on random data
mock external services
Commiting
Run
npm run clean-build
before very commitIf you are about to release do not forget to update the package version
Create a git tag for each package version
Do not forget to update this file
Recommended tools
If you are using vscode it is recommended to install .ejs. Great plugin!
License
All rights reserved to SLiCKss