Home

Awesome

Rainbows :rainbow:

A prototype of the Rainbows programming language

GitHub Actions Codecov Try online

Because coding should be as easy as coloring in the lines, and programs should be as readable as coloring books :art:

To learn about the motivation, check out the original one page design doc.

Try out the online live coding environment and let me know what you think!

Browser Compatibility

I'm taking advantage of css variables, so your browser will need to support these. This should be fine for Chrome v49+, Firefox 29+, and Safari 9.1+. Also, there is no mobile support as of yet.

If this project is not compatible with these browsers, please let me know. If you want to run the dev unit tests, you'll need NodeJS v6+.

Language features

Live coding environment

Also, check out the official vim plugin!

Soon to come

Contributing (help is appreciated!)

The best way you can contribute right now is to help think of examples where Rainbows shines! If you have a short code snippet you think Rainbows would help make more readable, feel free to suggest it an issue or send a PR against the examples list.

Building the project

First, install it (and the git submodule dependencies!)

$ git clone --recursive https://github.com/nfischer/rainbows-lang.git
$ cd rainbows-lang/
$ npm install

Next, run it in the browser using npm start.