Skip to content

trevis-dev/dojo.js

 
 

Repository files navigation

Dojo: The Provable Game Engine

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

Dojo.js Examples

  • 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

Contributing to dojo.js

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

Building Packages:

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

Dojo starter:

To install dojo-starter submodule (which allows interactions with the examples), run:

git submodule update --init --recursive

Debugging

If you have issues on WSL, install package first then run command:

npm i @dojoengine/create-dojo -g
npx @dojoengine/create-dojo

Examples

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

About

dojo.js - enter the dojo via js

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 53.0%
  • TypeScript 25.1%
  • JavaScript 10.9%
  • Rust 9.3%
  • CSS 1.4%
  • Shell 0.3%