Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
Open-source template generator for responsive HTML email signatures, built with Node.js and Gulp, with CSS inlining and multi-template support.

A quick and easy way to generate markup for mailto links without having to worry about the annoying formatting.
responsive-html-email-signature is an open-source Node.js command-line tool that turns simple JSON configs and HTML/CSS template files into responsive HTML email signatures, automating the painful process of writing table-based email markup.
responsive-html-email-signature is a template generator for responsive emails and email signatures, built on Node.js and Gulp. It takes template directories containing HTML files, stylesheets (CSS, SASS, LESS, or PostCSS), and a conf.json configuration object, and outputs minified HTML signature files into a ./dist folder. The project is maintained by Dan Mindru on GitHub and published on npm, with support for generating multiple signatures from a single config array. It also includes a GitHub Actions workflow for automated builds and S3 deployment.
conf.json in a template folder to set id, name, contactMain, contactMail, slogan, logoUrl, logoAlt, and website; pass an array of configs to generate multiple personalized signatures at once.gulp-inline-css, which also converts properties like background-color into bgcolor attributes on table elements.*.inc.html become reusable partials that can be included with the @include comment; every other .html file in a template folder becomes a separate email template (e.g., full signature vs. reply signature).src are embedded as base64 data URIs, keeping the signature self-contained (with a note that some clients have hard size limits).-moz- and -webkit- are added automatically, and config usage is linted to catch missing parameters.npm start watches template files and rebuilds on every save.npm install can create a personal responsive signature for Gmail, Outlook, or Apple Mail.conf.json with each person's name, role, and contact info, then run the build once to get a folder of individual signature HTML files.signature.html and a simpler signature-reply.html, so you can add a shortened signature for replies.generate-email-signature.yml workflow to generate a signature and upload it to a cloud storage bucket with GitHub Actions.After cloning the repo, run npm install and then npm start. The default build reads template folders from ./templates, processes the HTML/CSS/config, and writes generated signatures to ./dist; the command stays running and rebuilds whenever HTML or CSS files change. To build a single time without watching, npm run once is available, and npm test runs the test suite once.
Yes. Instead of a single object in conf.json, provide an array of configuration objects; each object produces one signature file, which is useful for teams or colleagues.
Gmail users can paste the generated HTML into their signature settings, but note that Gmail doesn't support inlined base64 images — you must use absolute http(s) URLs for images.
The README walks through Thunderbird, Gmail, Office 365 / outlook.live.com, Apple Mail on macOS, and Outlook 2010 for Windows, including manual setup steps and known quirks like base64 not showing in Outlook 2010.
The build pipeline automatically handles plain CSS, SASS, LESS, and PostCSS files. Vendor prefixing is handled by autoprefixer so you don't need to write -moz- or -webkit- manually.
Yes, it's open source under the license on GitHub, and you can clone or install it via npm to use as-is or customize.
