Dojo is a community driven open-source, Provable Game Engine, providing a comprehensive toolkit for building verifiable games and autonomous worlds.
Dojo.js is the official JavaScript SDK for interacting with Dojo worlds. It is currently a work in progress (WIP), and we are actively seeking contributors.
Read the full dojo documentation
Bootstrap a dojo world like so. You will need dojo installed.
npx @dojoengine/create-dojo
- React-app - A vite react app example using Dojo
- React-phaser - A vite phaser react app using Dojo
- Torii-bot - A small discord bot for interacting with Torii
- vue-app - A vite vue app example using Dojo
Dojo.js is MIT licensed and welcomes contributors. Setting up your environment is simple.
From the repository root, run the following to install all the necessary package dependencies:
pnpm install
Note: Before running the examples, you must build each package.
To build all packages, from the root directory, run:
pnpm run build
To watch for changes on all packages in parallel, from the root directory, run:
pnpm run build-watch
To install dojo-starter submodule (which allows interactions with the examples), run:
git submodule update --init --recursive
If you have issues on WSL, install package first then run command:
npm i @dojoengine/create-dojo -g
npx @dojoengine/create-dojo
To run the examples that have the linked packages, follow the steps below:
Terminal 1: Set up the dojo starter with specific configurations.
cd examples/dojo-starter
katana --disable-fee --block-time 1000
Terminal 2: Build and migrate the dojo starter.
cd examples/dojo-starter
sozo build
sozo migrate
Terminal 3: Start the React app.
cd examples/<package>
pnpm install
pnpm run dev