Mist is built on a suite of emerging technologies. Some resources to help get an understanding of it all can be found in the reading material. Beyond that, working knowledge of Rust is benefecial. If you’re new to Rust, the book is a great place to start.

Dependencies

You’ll need to have devbox and docker installed; all other dependencies are managed by devbox. If you’d rather run your development environment yourself, have a look at devbox.json for a list of dependencies.

Setting everything up

  1. Clone the repository and navigate to the project directory.
git clone git@github.com:mist-id/mist.git && cd mist
  1. Start the development environment. This may take a while the first time as it downloads all dependencies.
devbox shell
  1. Copy over the env config. Make sure to edit the required values.
cp .env.example .env
  1. Start Mist and external services.
just dev
  1. Create a tenant for users to sign up to. You’ll need to provide your local IP address to allow Mist to communicate with the demo service (see below)
just seed 10.0.0.125

Testing

To test the authentication flow, you’ll need an SIOP-enabled app. Any should work, but development has so far been done using Sphereon Wallet (iOS, Android).

You’ll also need to run the demo service. Once again, be sure to edit the required values.

cp demo/.env.example demo/.env

just demo

What next?

Check out good first issues to find something to work on!