This specification is authored on GitHub in a plaintext source format called Ecmarkup. Ecmarkup is an HTML and Markdown dialect that provides a framework and toolset for authoring ECMAScript specifications in plaintext and processing the specification into a full-featured HTML rendering that follows the editorial conventions for this document. Ecmarkup builds on and integrates a number of other formats and technologies including Grammarkdown for defining syntax and Ecmarkdown for authoring algorithm steps. PDF renderings of this specification are produced by printing the HTML rendering to a PDF.
Prior editions of this specification were authored using Word—the Ecmarkup source text that formed the basis of this edition was produced by converting the ECMAScript 2015 Word document to Ecmarkup using an automated conversion tool.
read262 was created using Gatsby, and a custom
gatsby-source plugin is used to break the single HTML file containing the original spec in into a series of separate pages. Some of read262’s CSS originated in the Gatsby blog starter I began the project with, while others were copied over from the
ecmarkup repository (see
src/templates/ecmarkup.css), and the rest are my own.
The fonts used on read262 are Futura, Merriweather, and Fira Code. Search is provided by Algolia when you’re online, and js-search when you’re offline. Everything is hosted on Netlify, and Zapier is used to automate deploys whenever the spec repo is updated (here’s the Zap I use). The yellow color is copied from the JS logo.
read262 supports Dark Mode automatically, and uses a service worker to enable offline support.