Many documentation resources are available online:
- API Documentation describes all public methods, interfaces, properties and events.
- JSON reference explains how to describe your project in the json configuration file.
- Samples demonstrates how to build your experience in the config.json file.
- Tutorials series explains how to use some of the ForgeJS features in your project.
- Known issues and limitations.
- Frequently asked questions.
The latest build is available online on our ForgeJS download page.
ForgeJS is licensed under Apache 2.0 license.
ForgeJS has the following dependencies:
- three.js r86 (MIT license)
- hammer.js 2.0.8 (MIT license)
- omnitone 1.0.1 (Apache 2.0 license)
- dash.js 2.6.0 (BSD license)
NOTE: We made a custom build of three.js with some classes concatenated to it. These classes are included in the original three.js repository but not concatenated in the main build. We added EffectComposer, RenderPass, ClearPass, MaskPass, ShaderPass, TexturePass and CopyShader in our three.custom.min.js.
- Clone the project from GitHub (
git clone https://github.com/gopro/forgejs).
- Install nodejs and npm on your machine (download here).
- Install the grunt-cli npm package (
npm install -g grunt grunt-cliwill install grunt globally on your machine).
- Install the node dev dependencies of the project (
cd forgejs && npm install).
You can now run grunt tasks from the project repo folder. Here is a short list of useful grunt tasks:
Build a non minified build of ForgeJS:
Build a minified build of ForgeJS:
grunt min // without logs on FORGE.DEBUG = true
grunt min --keep-log // with logs
grunt min --no-test // without tests
Generate the documentation and the json reference:
Auto watch any changes you made in sources to auto build a non minified build of ForgeJS: