Awesome Open Source
Awesome Open Source


BlockLike.js is an educational JavaScript library. It bridges the gap between block-based and text-based programming.

BlockLike.js is designed following Scratch concepts, methods and patterns. The screen is a centered stage. Interaction is with Sprites. Code is executed in a "paced" manner. Scratch block code and BlockLike.js text code are meant to be as literally similar as possible.

BlockLike.js is written in ES6/ES7 flavored JavaScript. It is environment independent. It can be used anywhere modern JavaScript runs.

See for details, docs, examples and FAQ.

Get Started

The easiest way to start with BlockLike.js is using CodePen.IO. Alternatively, you can create an index.html file and include BlockLike.js with the script tag.

The website has a one-click setup for CodePen and instructions how to load the most recent version off of a CDN.



Make sure to have Node.js installed.

Clone the repo.

In a terminal:

npm install
npm start

npm run watch


If you encounter:
Failed at the [email protected] install script 'node-gyp rebuild'.

You'll need Cairo and Pango installed on your dev box. BlockLike uses node-canvas to run tests (dev dependency) and it requires the former.

brew install pkg-config cairo pango libpng jpeg giflib
npm install
Other systems

See node-canvas documentation.

If you encounter:

Something else is using that port.

Open webpack.config.js and change the port setting for the devServer.


npm run build

The build script will build the two library versions (normal and min), generate the third one (mascotless) and republish the docs.



npm run test

Single test:

TEST=stage_looks npm run test:it

Documentation publishing

npm run docs


Ron Ilan



Fabriqué au Canada : Made in Canada

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
javascript (68,676
browser (449
learn-to-code (89
educational (40
scratch (23
blockly (20

Find Open Source By Browsing 7,000 Topics Across 59 Categories