An awesome project to upload data on a website and authenticating it through ethereum smart contracts!
This project is a proof of concept for storing University Transcripts on Blockchain.
View Demo
·
Report Bug
This project uses React.JS for front end and Ethereum smart contracts for storing the data on a blockchain. Below is the entire process from entering data to uploading it to a private Blockchain and displaying it on a website
- Admin Panel Login: First you enter a password to log into the system to input data.
- Adding Data: You input the transcript data into respective fields.
- Submitting: After adding data, once you click on the submit button, the server uploads the data to a private Ethereum Blockchain using Ganache.
- Logging Into View: Once the data is uploaded successfully, you log into a separate website with a password to view it.
- Fetching Data: On login the client fetches data and populates the fields.
- Updating: Data can be updated on the Blockchain through the admin panel and once confirmation notification is received, the new data can be fetched via the update button on the view window.
This project uses the following software and languages
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
Here is the list of all the prerequisites you would need to install on your system in order to run this device
- Node.js v10.15.3
https://nodejs.org/en/download/
- npm
https://www.npmjs.com/get-npm
- Truffle
https://www.trufflesuite.com
- Additional build tools are required to be able to run this project on windows. Run these commands from an
administrative shell to install software dependencies:
Note: You need to install windows build tools version 4.0 or higher
npm install --global --production windows-build-tools
npm install -g node-gyp
-
Add all dependencies using npm
npm install
-
Open Ganache and run a private Blockchain
-
Run Truffle to add smart contract to the Blockchain
truffle migrate --reset
-
Run server to start the React.JS client
npm start
Note: You need to keep running Ganache for the app to work. Please go through the deployment below to start using your client.
Run
npm build
You need to connect to Rinkeby or Ropsten test network if you do not want to spend any money on Ethereum smart contracts via the Mainnet.
Check out the demo on youtube here - View Demo
- Jay Kumar - Complete Development - jaykch.com
This project is licensed under the MIT License - see the LICENSE.md file for details
- Boilerplate - Boilerplate for React.JS + Ethereum + Truffle project.