Skip to content
Twemoji font in COLR/CPAL layered format
Branch: master
Clone or download
Pull request Compare This branch is even with mozilla:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
extras Delete 1f3ff.svg Mar 7, 2018
Makefile Makefile changes to build Twemoji Mozilla Mar 7, 2018 Add python-fontforge to the Ubuntu install example. Jun 20, 2018 Update Mar 7, 2018
layerize.js Merge pull request mozilla#37 from KwanEsq/v11 Apr 17, 2019


Project to create a COLR/CPAL-based color OpenType font from the Twemoji collection of emoji images.

Note that the resulting font will only be useful on systems that support layered color TrueType fonts; this includes Windows 8.1 and later, as well as Mozilla Firefox and other Gecko-based applications running on any platform.

Systems that do not support such color fonts will show blank glyphs if they try to use this font.

Getting started

This project makes use of grunt-webfont and an additional node.js script. Therefore, installation of Node.js (and its package manager npm) is a prerequisite. Grunt will be installed as a package dependency — no need to install it globally.

The necessary tools can be installed via npm:

# install dependencies from packages.json, including `grunt-webfont`.
npm install

The build process also requires fontforge and the TTX script from the font-tools package to be installed, and assumes standard Perl and Python are available.

Both FontForge and font-tools can be installed via homebrew on OS X, or package managers on Linux:

# OS X
brew install fonttools fontforge

# Ubuntu, for example
sudo apt-get install fonttools fontforge python-fontforge

Building the font

Once the necessary build tools are all in place, simply running


should build the color-emoji font build/Twemoji Mozilla.ttf from the source SVG files found in file and extras, overrides directories.

You can’t perform that action at this time.