A rudimentary javascript sandbox for use with node.js
Branch: master
Clone or download
Pull request Compare This branch is 37 commits behind gf3:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
example
lib
spec
vendor
.gitignore
.gitmodules
README.md

README.md

Node Sandbox

A rudimentary javascript sandbox for use with node.js.

Some features

  • Can be used to execute untrusted code.
  • Support for timeouts (e.g. prevent infinite loops)
  • Handles errors gracefully
  • Restricted code (cannot access NodeJS methods)

Example

Be sure to check out example/example.js

var s = new Sandbox();
s.run('1 + 1 + " apples"', function(output) {
  // output == "2 apples"
});

Issues

There seems to be a race condition somewhere which sometimes prevents output from being returned properly.

Update: This is no longer an issue with the latest version of node.

Documentation

Coming soon!

Basic syntax: sandbox_instance.run(code_string, hollaback_function)

installation & running.

git http://github.com/gf3/node-sandbox.git

now instruct git to download submodules (into node-sandbox/vendor)

cd node-sandbox
git submodule init

run an example cd example node example.js

run tests

npm install async_testing
node spec/sandbox.spec.js

Author

Written by Gianni Chiappettagf3.ca