Tool for rendering multilingual templates sent to E-mail
Go to file
ErickSkrauch cb84df8f96 Upgrade project structure to webpack 4.
Remove unused dependencies.
Rename all .jsx files into .js.
2019-03-17 01:37:00 +03:00
scripts Upgrade project structure to webpack 4. 2019-03-17 01:37:00 +03:00
src Upgrade project structure to webpack 4. 2019-03-17 01:37:00 +03:00
webpack-utils/intl-json-loader Upgrade project structure to webpack 4. 2019-03-17 01:37:00 +03:00
.eslintrc.json Support for components in BitmapText 2016-10-01 11:06:47 +03:00
.gitignore Use files instead of data uri. Added option to define assetsHost 2016-09-27 08:02:19 +03:00
package.json Upgrade project structure to webpack 4. 2019-03-17 01:37:00 +03:00
README.md Use files instead of data uri. Added option to define assetsHost 2016-09-27 08:02:19 +03:00
webpack.config.js Upgrade project structure to webpack 4. 2019-03-17 01:37:00 +03:00
yarn.lock Upgrade project structure to webpack 4. 2019-03-17 01:37:00 +03:00

This package allows rendering of React components into plain HTML to use it in emails. Each directory in emails dir corresponds to separate email template. Each email component will receive payload, passed from command line:

node cli --type=<email_dir_name> --payload=<json_encoded_in_base64> [--assetsHost=<scheme://host:port>] [--locale=be]

Try php example.php for demo.

Email component structure

  • index.js — required. This file should export the main component, wich will receive payload.
  • fixtures.js — an optional file exports hash {featureId: payload, featureId2: payload}. Use this to create data samples for testing in dev mode.
  • styles.js — an optional file, that will hold style objects for email components to allow style inlining.
  • messages.intl.json — an optional file, that exports hash with {messageId: defaultMessage} for react-intl.

Available npm scripts

  • npm start — starts app in dev mode.
  • npm run i18n — collects translations and places in src/i18n.
  • npm run build — builds app for usage in cli.js.
  • npm run eslint — lints source files.