API first

 

A key design principle of Turbo CSS was to make it as easy to integrate into any codebase as possible. One of the first major decisions that arises is to decide which programming language it should be implemented in. Unfortunately, any choice would go against the above stated principle, so I decided it should not be tied to any language.

Thus, Turbo CSS is an API first, a specification with lots of executable test cases, 734 at the time of this writing. It is accessible in the Turbo CSS Specification repo on Github. If you want to see a concrete specification example, here is one for the width utility.

Individual Turbo CSS compiler implementations are expected to execute the specification test cases and make them all pass. Currently, there are 2 implementations:

Both implementations are extensively tested. The Go implementation is considered to be the reference implementation.

The Go implementation is already running in production on over 1000 Boomla websites. The JavaScript implementation is also production ready.

Get in touch if you want to translate Turbo CSS to another language.