dojo-templater
v0.1.17
Published
Easy HTML emails with variables
Downloads
196
Readme
ClassDojo Templater
Author: Chris Frank
What does this module do?
Dojo Templater handles all the nastiness of sending HTML emails. Include the module, call one of the public methods, and Templater takes care of the rest.
Features
- Translations via Crowdin. Handlebars syntax:
{{ I18n 'dojo-templater.emails:welcome_a.welcome' }}
- Layouts in handlebars:
{{#extend "main"}}
- Inlines CSS so you can write your CSS in a separate file.
- Does NOT inline anything in
<style>
tags. Use<style>
tags for mobile clients. - Uses Zurb's Ink framework. Ink makes emails easy to maintain and work on many clients.
- Uses fixture data for testing and previews. Update fixtures in
src/fixtures.coffee
.
Using Dojo Templater in your projects
# The name of the handlebars file in email_templates
fileName = "midweekUpdate"
# Data object
data =
firstName: "Rafaelita"
lastName: "Rafaelli"
# Options
options =
language: 'en'
# If you want to use fixture data, say for testing
options.useFixtures = true
@templater = new Templater
@templater.fetchEmail fileName, data, options, (err, result) ->
# Result is an object with properties: html, plain, subject
console.log result.html
# There is another public method, "get_templates".
# This was for jade templates, and is being deprecated.
@template.get_templates(fileName, data, options, callback)
Testing and viewing templates
If you install Dojo Templater locally, you can run sh sample.sh
to test a particular template.
Look at index.test.coffee
to change which template renders.
For viewing all the templates, have a look at teach.classdojo.com/mailer/index
.
Here, you can see a list of all templates. Click the link to view a preview of the email in your browser.
IMPORTANT: When you add a new template, please update the src/fixtures.coffee
file and add info about your template to the index' fixture.
This is the only way to keep
teach.classdojo.com/mailer/index` up to date.