enjin/platform-core

The core package for the Enjin Platform.


README

The core package for the Enjin Platform.

License: LGPL 3.0 codecov Tests

Enjin Platform is the most powerful and advanced open-source framework for building NFT Platforms.

Requirements

Please make sure you have Go installed on your machine. You can check it by typing:

go version
# go version go1.18.1 linux/amd64

If you don't have it, you can find instructions on how to install it here.

Also when using Platform-UI make sure you have Node and NPM installed:

node -v      
# v16.17.0
npm -v      
# 9.2.0

Installation

You can install it with Composer in your Laravel application:

composer require enjin/platform-core

After that, you will need to build one dependency by typing:

cd vendor/gmajor/sr25519-bindings/go && go build -buildmode=c-shared -o sr25519.so . && mv sr25519.so ../src/Crypto/sr25519.so

This package will load its migrations automatically, you need to execute them by running:

php artisan migrate

You can publish the config file with:

php artisan vendor:publish --tag="platform-core-config"

Usage

First, you should sync your platform with a snapshot of Efinity state:

php artisan platform:sync

After that you need to start fetching the blocks from the blockchain:

php artisan platform:ingest

Then you should start the processor to update your local database:

php artisan queue:work

# Or, if you're using Laravel Horizon
php artisan horizon

Finally, you may start the development server to access the API by running:

php artisan serve

You will find the GraphiQL playground on:

http://localhost:8000/graphiql

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The LGPL 3.0 License. Please see License File for more information.