Skip to content


Liminoid is a toolkit for building local-first interactive analytics applications (powered by WebAssembly). It is a set of modular projects designed to have a low floor but high ceiling that can be used together (or independently). If you just want to jump in and get started building something, see the quick start. For a description of the Liminoid packages and the technologies they are built on.... read on!


There are various packages and building blocks that make up Liminoid. Each targets a different abstraction level with its API (from highest to lowest):

Command line interface

The fastest way to start using Liminoid is through the CLI which scaffolds out new projects, has a built in live reloading development server, and finally builds projects into self contained bundles that can be deployed to any static site host (like or Github Pages). Think of the liminoid-cli as something analogous to the Rails CLI.


The command line interface is really just a friendly utility to process liminoid-mdx. Liminoid MDX allows you to transform Markdown code fences into interactive editors that execute in the browser. The library itself is implemented as a MDX plugin and can be used with any framework that supports MDX.

<Liminoid />

Going one more turtle down, liminoid-mdx is really just a bit of syntactic sugar to more easily use the liminoid-react component in content centric Markdown documents. But if you are building an HTML based application (like most things on the web), the <Liminoid /> React component allows you to more easily use Limimoid as a building block in a larger component hierarchy.


At the bottom of this castell rests the humble pinya package: the Javascript REPL. Without liminoid-js, none of the other pacakges would be possible.... but much like the assemblers of the 50's, it is rare that you would use liminoid-js directly (in this day and age).

Edit this page on GitHub
GithubChatTwitterStack OverflowContributingColophonCitation