Here is a step-by-step guide to assist you in starting to use Enjin Platform
Our platform was made to be as simple as possible to run, you will be able to have a full running environment in less than 5 minutes.
And docker, you may install either the docker engine or docker desktop, though for people that have never used docker before we recommend using docker desktop: https://www.docker.com/products/docker-desktop/
In order for this to work you have to clone the repository, Please note that downloading it as a zip will generate problems with the submodules.
To clone the repository just run the following command in the Terminal or Command Prompt in the folder where you want to download the platform.
git clone https://github.com/enjin/platform
# Cloning into 'platform'...
# remote: Enumerating objects: 119, done.
# remote: Counting objects: 100% (22/22), done.
# remote: Compressing objects: 100% (17/17), done.
# remote: Total 119 (delta 10), reused 8 (delta 5), pack-reused 97
# Receiving objects: 100% (119/119), 34.10 KiB | 2.62 MiB/s, done.
# Resolving deltas: 100% (42/42), done.
There are two start scripts in the main folder of the platform a
start.batthat can be used in Windows and a
start.shthat can be used in macOS and Linux. When you run the script everything will be set up for you. Here you can find a sample output of everything that will happen:
Welcome to Enjin Platform, this script will help you start it up
For a few things to work, we need to know your platform URL
Please input the URL: (e.g. http://127.0.0.1)
Laravel uses an app key to protect your data with encryption
Your APP_KEY is not set, do you want to generate one? (y/n)
Done, your key is: base64:CGAdVfzKICzydRuipAxt9UxlbfMjggDiiT52T7P9H0A=
We also use a static token to protect your platform from unauthorized access
Your BASIC_AUTH_TOKEN is not set, do you want to generate one? (y/n)
Done, your basic static token is: 01f093ba63b4285b0ec451f406e3d8580f28ec32b97ac7e97f3e4bed31b44907
Finally, we also use a password to protect your wallet daemon
Your KEY_PASS is not set, do you want to generate one? (y/n)
Done, your daemon password is: 0c0b44096a6f54d3ab92aff019a7dd5ecf383fd0df908e71aec34b62145e96e5
[+] Building 11.8s (26/26) FINISHED
Let's get your wallet daemon address, please wait...
[+] Running 1/1
✔ Container platform-daemon-1 Started
Your wallet daemon address is: efUGPaFNbV3JyqEfv27eRWkQ2tcMd5ympi83p1c2q5VUXPttv
Do you want to start all platform services? (y/n)
[+] Building 179.1s (141/167)
[+] Running 8/8
✔ Container platform-decoder-1 Started
✔ Container platform-redis-1 Running
✔ Container platform-daemon-1 Running
✔ Container platform-database-1 Running
✔ Container platform-websocket-1 Started
✔ Container platform-app-1 Started
✔ Container platform-ingest-1 Started
✔ Container platform-beam-1 Started
Your Enjin Platform is now running, please visit: http://localhost:8000/graphiql
For the Enjin Platform Starter, the default network selected is p
olkadot(mainnet), but you can change it to
canary(testnet) by accessing the environment variables in the .env file inside the configs/core folder:
NETWORK=polkadot OR canary
There are two ways of interacting with Enjin Platform, through the GraphQL API. For testing you can use the GraphiQL playground that will be accessible at http://localhost:8000/graphiql
But you can also use the Enjin Platform UI which you can access at http://localhost:8000, you might see this setup screen where you should enter the
BASIC_AUTH_TOKENthat was shown to you in the setup script.
After that, you will be able to navigate through the UI and create collections, tokens, fuel tanks, and everything that the Enjin Platform provides to you.
In this guide, we have covered the basics of cloning the Enjin Platform, configuring it, and starting it. This is all the basic knowledge you need to now interface with the Enjin Blockchain, however, there is a lot more to explore, from setting on-chain attributes on collections and tokens and performing transfers to more advanced features like setting up on-chain Fuel Tanks and creating Beams.
Check the API reference for a full breakdown of all the functions you can call, and the platform recipes for more specific examples.