This application was delivered as a final piece of coursework for my masters in computer science. The application is a Decentralised application and can be deployed to either a test or production blockchain.
This application stores data on public blockchain and also a private datastore (BigchainDB) Some basics to orientate yourself....
- The main app is written in NodeJS. Once you have pulled the project first rung
npm install
This will load the project dependencies.
- If running locally you will then need to setup and install a local version of BigchainDB:
https://www.bigchaindb.com/ - Documentation here. BigchainDB will run on top of MongoDB. Please make sure this is installed already in your local environment.
- Setup a local version of a Blockchain. The easiest way to do this is via Ganache:
https://www.trufflesuite.com/ganache
-
Ensure you have version of Python3 available on your local machine. The application uses a Python loader to load data into the application.
-
Setup Metamask in a browser. Documentation here: https://metamask.io/
-
Install Make on the local environment https://mg.readthedocs.io/make_tutorial/make_tutorial.html
-
- Start the BigchainDB server
-
- Cd the project directory and run
-
-
Start ganache and ensure that it is running on this setting:
host: "localhost",
port: 7545,
-
-
- Run this command
npm install
If you have not already done so. This will install all dependencies for the project.
-
- Run this command
make load_reset
This will load a set of test data to access when using the app.
-
- Run this command
truffle migrate --reset
This will deploy the contract to Ganache
-
- Start the server
npm run dev
You should now be good to go and test out the application running locally on your own enviroment!
Enjoy!