The modular design system for modern, responsive email development.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Inkcite is the modular desin system for building modern, responsive email. Like Middleman is to static web sites, Inkcite enables #emailgeeks to use helpers (custom email components), variables, partials and conditionals to accelerate their email development workflow. Additionally, Inkcite provides easy ways to keep your code DRY (don’t repeat yourself) and to modernize email development using variables, versioning, testing, image optimization and code minification.

  • Powerful media query and fluid-hybrid responsive support
  • Custom, reusable email components and Helpers
  • Easily define variables and use partials to make code reusable and emails consistent
  • Support for conditionals and scripting for dynamic content, A/B Testing and 1-to-many personalization
  • Automatic link tagging and tracking
  • Automatic image optimization using ImageOptim
  • Automatic email-safe HTML minification
  • Instant compatibility testing with Litmus and other testing services
  • Integration with ProofHQ for distributed, interactive group proofing
  • Automatic Litmus Engagement analytics integration
  • Email preview distribution lists
  • Failsafe rules to automatically watch for errors and problems

Complete documentation for all of Inkcite's exciting features is available at


Inkcite is a Ruby gem. Ruby comes pre-installed on Mac OS X and Linux. If you’re using Windows, try RubyInstaller.

gem install inkcite

Getting Started

After Inkcite is installed, you will have access to the inkcite command. Create a new Inkcite email at your terminal or command prompt:

inkcite init MY_EMAIL

This will create a new directory called MY_EMAIL and fill it with the source files for your new email project. It includes a subdirectory called helpers where your email components are stored and a subdirectory called images where you store all images for your email.

Change directories into your new project and start the preview server:

inkcite server

Inkcite’s preview server gives you a live view of your email as you build it by modifying the source.html, helpers.tsv, config.yml (or any partials you create in this directory) or any files in the helpers/ and images/ sub-directories.

Open your browser to http://localhost:4567 to see your email as you build it. As you make changes, your browser will automatically reload when changes are made to any file in the project.

The config.yml file has an extensive set of properties that influence the HTML code that Inkcite produces plus how it sends preview emails.

During development, you can refer to your command prompt or terminal window to see important warnings (such as missing images or links).

Image Optimization

If you have installed ImageOptim, you can enable automatic image optimization in the config.yml file. Inkcite will ensure that every image in your project is compressed using whatever settings you configure ImageOptim to use.

Email Previews

When you’re ready to see what your email looks like in an email client, Inkcite will send previews on demand. Make sure you have configured the smtp settings in the config.yml file so that Inkcite can send email via your SMTP server. When you’re ready to send:

inkcite preview

With no other parameters, this will send a preview version of your email to the from email address you configured. You can also use the preview command to send to your email to internal or client distribution lists for review.

Compatibility Testing

Testing your Inkcite-built emails with Litmus is easy. Make sure you have configured the litmus section of the config.yml file.

inkcite test

The will create a new email test using your default set of email clients and send a preview version of the email to Litmus for testing. Subsequent runs of the test command will update the same test. Log into your Litmus account to review the results of the test.

Production Builds

After you’ve previewed and tested your email, you’re ready to create the production-ready email files. From the project directory:

inkcite build

By default, this will create the production version of your email. This includes fully-qualified URLs for images, link tracking and tagging and a host of other preflight features.

Learn More

A step-by-step tutorial for building a modern, responsive email from start to finish is available on the Inkceptional blog.

Documentation for Inkcite is available at

Bug Reports

Github Issues is used for managing bug reports and feature requests. If you run into issues, please search the issues and submit new problems.

The best way to get quick responses to your issues and swift fixes to your bugs is to submit detailed bug reports, include test cases and respond to developer questions in a timely manner.


Copyright (c) 2014-2018 Jeffrey D. Hoffman. MIT Licensed, see LICENSE for details.