Scenery is a library for building interactive visual experiences in HTML5, which can be displayed in a combination of ways (WebGL, SVG, Canvas, etc.)
By PhET Interactive Simulations https://phet.colorado.edu/
The majority of the documentation exists within the code itself, but our main documentation and a tour of features is available online, along with other resources under the dedicated website
Currently, you can grab the unminified scenery.debug.js or minified version scenery.min.js.
We have a list of examples to get started from
The PhET Development Overview is the most complete guide to PhET Simulation Development. This guide includes how to obtain simulation code and its dependencies, notes about architecture & design, how to test and build the sims, as well as other important information.
Our processes depend on Node.js and Grunt. It's highly recommended to
install Node.js and then grunt with npm install -g grunt-cli
.
(1) Clone the simulation and its dependencies:
git clone https://github.com/phetsims/assert.git
git clone https://github.com/phetsims/axon.git
git clone https://github.com/phetsims/chipper.git
git clone https://github.com/phetsims/dot.git
git clone https://github.com/phetsims/kite.git
git clone https://github.com/phetsims/perennial.git perennial-alias
git clone https://github.com/phetsims/phet-core.git
git clone https://github.com/phetsims/phetcommon.git
git clone https://github.com/phetsims/scenery.git
git clone https://github.com/phetsims/sherpa.git
git clone https://github.com/phetsims/tandem.git
git clone https://github.com/phetsims/utterance-queue.git
(2) Install dev dependencies:
cd chipper
npm install
cd ../perennial-alias
npm install
cd ../scenery
npm install
(3) Build scenery
Ensure you're in the kite directory and run grunt --lint=false --report-media=false
. This will output files under
the build/
directory
MIT license, see LICENSE
If you would like to contribute to this repo, please read our contributing guidelines.