updated 00:44 30/01/19v0.1.178

SCRIPT-8 is a fantasy computer for making, sharing, and playing tiny retro-looking games (called cassettes). It's free, browser-based, and open-source. Cassettes are written in JavaScript.

Los hermanos brosbreak-8 gamethe plumber

SCRIPT-8 is designed to encourage play — the kind of wonder-filled play children experience as they explore and learn about the world. In order to support this goal, everything in SCRIPT-8 has immediate feedback. It is what some call a "livecoding" environment.

It features:

  • a code editor where the game changes as you type.livecoding
  • a slider to help you tweak numbers without typing.slider
  • a time-traveling tool so you can pause and rewind.pause and rewind
  • buttons that show a character's past and future paths.toggle
  • the ability to combine all the above so you can manipulate time.
  • a sprite editor where the game instantly displays your edits.sprite demo
  • a map editor where changes alter the game's behavior, in real-time.map demo
  • a music editor where you create phrases, group them into chains, and turn those into songs.music demo

Each cassette is recorded to a URL you can share with anyone.

Play cassettes with a keyboard or gamepad.

You can inspect any cassette's contents (even if it's not yours), change the code, art, or music, and record it to a different cassette — a new version.

SCRIPT-8 is heavily influenced by Bret Victor's ideas (specifically Inventing on principle and Learnable programming) and Joseph White's PICO-8, the best of all fantasy consoles.

SCRIPT-8 is written by Gabriel Florit (that's me!). Click here to follow me on twitter. And visit the Github repository here, where you can keep up with new features and the occasional bug fix.

If you have any questions, come join us on the Fantasy Consoles Discord server, a friendly place to chat about these sophisticated, cutting-edge computers. The server has a dedicated SCRIPT-8 room.

SCRIPT-8 nyx8 palette by Javier Guerrero. Sprites in Los Hermanos Bros. by Johan Vinet.