Rimu is a readable-text to HTML markup language inspired by AsciiDoc and Markdown.
- Markup generation can be customized and extended.
- Includes a simple, flexible macro language.
- HTML attribute injection and parametrized macros.
- Accepts raw HTML (a la Markdown).
- A subset of the Rimu syntax is Markdown compatible.
- One-function API.
- Playground GUI, Vim syntax highlighter and a unit test suite.
- MIT license.
- Ported to three language platforms:
- The canonical JavaScript version written in TypeScript with no dependencies. Single JavaScript file (less than 22KB minified) that can be dropped onto a Web page or used as a Node module.
- A Kotlin port for the JVM platform.
- A Go port.
Read the documentation and experiment with Rimu in the Rimu
Playground or open the
rimuplayground.html
file locally in your browser.
See the Rimu Change Log for the latest changes.
Install Rimu as a Node.js module (includes the rimu
library and the
rimuc
command-line tool):
sudo npm install -g rimu
Run a simple test from the command prompt to check rimuc
is working:
echo 'Hello *Rimu*!' | rimuc
This should output:
<p>Hello <em>Rimu</em>!</p>
To build Rimu and the Rimu documentation from source:
-
Install the Git repository from Github.
git clone git@github.com:srackham/rimu.git
-
Install gh-pages sub-repository:
cd rimu git clone git@github.com:srackham/rimu.git -b gh-pages gh-pages
-
Install dependencies:
npm install
-
Build Rimu:
jake build
- First read the Rimu API documentation.
- A minimal TypeScript example minimal-example.ts.
- Rimu includes the rimuc command-line tool and the Rimu Playground -- examples of using Rimu in Node.js and in the browser respectively.
- A simple Chrome browser extension for rendering Rimu Markup files directly in the browser.
The generated HTML is compatible with all Web browsers. The Rimu JavaScript library works with IE11, Edge, Firefox, Chrome and Android.