Learn and explore JavaScript, and create your own dares!
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
about
app
blindfold
dist
misc
.gitignore
.slugignore
CNAME
Gruntfile.js
LICENSE
Procfile
README.md
favicon.ico
index.html
npm-shrinkwrap.json
package.json
thesis-jan-paul-posma.pdf

README.md

jsdares Dependency Status

jsdares is an experimental learning environment, created by Jan Paul Posma for a masters dissertation at the University of Oxford. The code is available under the MIT license.

Features

  • Collaborative platform for anyone to create and solve programming puzzles: "dares".
  • Custom parser for a subset of Javascript: "js--".
  • Runtime that saves everything, and allows moving through the program execution with ease, inspired by Omniscient Debugger.
  • Advanced interface for making games that allows going back in time, visualises how the code maps to the output, and makes it easy to tinker with the code, inspired by Bret Victor.
  • Robot environment for learning the basics of programming, based on the Logo turtle and Karel the Robot.
  • Canvas and console environments based on the standard browser components.
  • Extensive set of code examples.
  • Basic set of dares which challenge learners to make shorter programs using the concepts they are learning, inspired by Code Golf.
  • Cohesively designed experience.

Installation

  1. Install dependencies: npm install.
  2. Run grunt: node_modules/.bin/grunt.
  3. Done! Serve using some webserver, on the root domain.

To load the default dares, register a user with username janpaul123 and restart the server. Automatically dares will be created for this user, and the user will get admin rights.

Spinoff projects

  • Clayer, a direct interaction library based on BVlayer.
  • Robot, a robot applet based on the robot environment.

Contributing

PRs and bug reports are always welcome! :)