A modern plaintext data format, designed from the ground up for file-based content.
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.
examples Add an example reference document on sections Aug 22, 2018
rfcs-final-spec Add an rfc for removing field copy continuations Dec 7, 2018
DETAILS.md Kick off a textual detail specification Aug 19, 2018
FAQ.md Add an FAQ item for leading/trailing/pure whitespace in names Aug 22, 2018
TERMINOLOGY.md Markdown escapes the backtick operator Nov 4, 2018



This repository contains the specification documents for the eno notation language.

examples/reference contains eno documents that explain the language through numerous inline documented artificial usage examples.

examples/ also contains different real world usecase examples collected from various sources, these include brief explanations at the top of the files but have otherwise been kept unaltered (no inline comments added).

DETAILS.md contains a work in progress write-up of the more intricate details of the eno language specification (those more relevant to implementing than to using it).

eno.abnf contains a work in progress formal description of eno's grammar in ABNF notation.

FAQ.md contains mixed language details in Q&A format.

TERMINOLOGY.md contains a glossary with all terms that are used to describe the eno language.

Further information can be gathered from the resources on the website, also feel free to open an issue here in the issue tracker if anything is unclear.


Eno documents must be encoded as UTF-8.

Filename Extension

Eno documents use the .eno extension.


On the internet eno documents are transferred as text/eno.

Language stability and development plan

The eno language as documented, shown and used throughout eno-lang.org, all repositories, and all case studies, is a fully designed and developed release candidate (1.0.0-RC if you will), whose aptness for a broad variety of usecases has already been tested in multiple, diverse case studies.

For the coming months up until the end of 2018 this stage (frozen RC) will be kept, with the goal of gathering more and broader data and insights on any possibly overlooked language design flaws, inconsistencies or absolutely required changes.

Based on this data a final specification will be compiled and ratified around Q2 2019, which should only introduce breaking changes if there are fundamental reasons found for such changes.

As soon as this second and at the same time last specification goes into effect and is fully supported by all library implementations it will consequently be frozen and locked, with no further changes planned nor allowed from that point on, or in other words, eno 1.0.0 Final (or whatever the name then) will be the next and last iteration of the language.

rfcs-final-spec/ contains RFC documents for the next (final) iteration of the language, see its readme for more information.