Open Source Projects

I have launched dozens of open source projects over the years, many used on millions of websites.

I design software that makes simple things easy, complex things possible, and keeps the transition between the two smooth. This short talk summarizes my API design philosophy well.

I want everyone who would benefit from these projects to have access to them, so my work is nearly always distributed under permissive licenses (typically MIT).

However, designing, building, and maintaining software is highly skilled, specialized work. If you are using my work in a for-profit project, there is a social expectation that you help fund its maintenance. Sponsor me on GitHub and be the reason we can have nice things. This is also in your best interest, as it makes me more likely to prioritize it.

33 projects

Rety

Rety ( )

Library

Rety is a library that allows you to record the edits you make on one or more pieces of text (usually code) and replay them later to recreate the same typing flow.

This is particularly useful for orchestrating live demos that run without your presence.

Innovation(s)

The same progressive development, which is the primary benefit of live coding, but without the fumbling, delays, or mistakes that often come with it.

Parsel

Parsel ( )

Library minor

A tiny, permissive CSS selector parser and specificity calculator.

Impact

  • Developed to aid Web Almanac’s analysis, and used to this day.
  • Used by Google’s Puppeteer project
The CSS3 Test

The CSS3 Test ( )

App

High coverage testsuite for the most stable CSS modules. 50,000 unique visitors on its launch.

Impact

Motivated browser vendors such as Mozilla or WebKit to support more CSS3 features to increase their scores on it.

-prefix-free

-prefix-free ( )

Library

-prefix-free was a library that allowed authors to write standard, prefix-less CSS and have the necessary prefixes added on runtime. Was gradually abandoned as browsers moved away from vendor prefixes, so the problem it was solving practically disappeared.

Innovation(s)

Used feature detection for almost everything instead of hardcoded lists, allowing it to remain extremely lightweight and always up-to-date regardless of its version.

Chainvas

Chainvas ( )

Library minor

Chainvas is a tiny generic chaining library that can make any API’s methods chainable (like jQuery). Official plugins for the DOM and the Canvas API included.

Innovation(s)

Uses reflection to read what methods are available and wrap them, making it generic enough that it can work with any API, no need to know anything about it in advance.

Inspire.js

Inspire.js ( )

Library

My slide deck framework, built exclusively with open web technologies. Includes plugins for editable CSS regions, syntax hightlighting and more. Originally released under the name CSSS in 2010, rewritten in 2018 and renamed to Inspire.js