A lightweight Blockchain Explorer for MultiChain based blockchains
NOTE: Work in progress
This project requires python 3, postgres and a MultiChain node with RPC access for local development and testing.
Tested against Multichain 2.0.5 with protocol version 20002.
It is recommended to use a python virtualenv for development.
Install dependencies in your activated virtualenv with
pip install -r requirements.txt. Create your configuration in
mex/settings/config.py (see sample_config.py). Get your development
environment up and running with these commands:
fab reset
python -m mex.sync
python manage.py runserver
If you make changes to the django models you can simply run fab reset and
it will create a fresh database reflecting your new models. But be aware to
only ever use fab reset for development because it will:
- delete and recreate django migration files
- drop and recreate a database named
mex - create a demo superuser (user: admin, password:
autogenerated)
When updating your installation with a new version apply migrations with:
fab update
python -m mex.sync starts a separate background process that will synchronize
the database with the node.
After starting your the app with python manage.py runserver visit the admin
interface at http://127.0.0.0:8000/admin/ and login with the the credentials
shown by the output of fab reset.
- Minimal datamodel for blocks, transactions, inputs, outputs and addresses
- Synchronization of blockchain data via JSON-RPC
- Web Frontend
- Stream Indexing
- Stream Search by Key
- Minimal REST api for webfrontend with node bridge/proxy
- Deployment scripts