nikhildsahu
E-Certify
JavaScript

Blockchain Based Certificate Validation

Last updated Jul 6, 2026
139
Stars
83
Forks
21
Issues
+1
Stars/day
Attention Score
60
Language breakdown
JavaScript 97.7%
Java 1.4%
HTML 0.5%
CSS 0.3%
Files click to expand
README

E-Certify

Blockchain Based Certificate Validation

made-with-react

E-Certify : About

  • It is a blockchain based project for online certificate validation.
  • The major problem of counterfeit certificates can be tackled with the help of E-Certify, as it provides a solution to preserve the genuineness of a certificate.
  • It works on the idea that: “Only the issuer can upload the certificate and the rest people can only view it.” The entire process works on the blockchain in partnership with the IPFS(to provide data security).
  • Does Everything for Certificates : Storing ,Validating and Sharing .
  • Thus this is a modern and hassle-free solution to manage certificates and verify them!
  • This Project was made at SIH 2019

Insight

  • It is D-App on Ethereum.
  • Back-End has Smart Contract
  • Front-end of our Web-App is made with React.Js and our complete frontend components are available at @gauravsharma-gs /dapper-ui (visit)
  • All User-Data is stored on IPFS also every data is first encryted locally and then send to ipfs to have more security

  • It create Multi-Sig Wallets for every student where both Student and his/her Institute is Owner.
  • We are using Metamask Browser Extension to work with Ethereum.
  • We have used Truffle for testing our project

How to Use

Login

  • There are two ways to login
- Login as Student - Login as Institute

- Upon First Signup Metamask will ask permission to connect your wallet with App.

  • There is an additional security by using OTP for Signup .
  • For Student
-Student need to connect their account with their Institute by giving Institute Address Key .
  • For Institute
-Student will to connect their account with Institute.

Dashboard

#### Student Dashboard

  • Student Dashboard have these options :
- My Documents - Students can upload their Certificates themselves but these certificates need to be verified by Institute side ,only then certificates will appear in my documents section. - Give Access - Students can give access to any other institute/organisation to his/her certificates , access is only given for limited time (24hr) - Change Institute - Students can request change of institute , this request is sent to current institute ,Upon approval students institute is changed. #### Institute Dashboard

- Institute Dashboard have these options : - Linked Accouts - In this section all student accounts linked to institute are shown. - Institute can students certificates from here. - Also institute can upload new certificates to students from here. - Access Rights - It shows all the student accounts to whom institute has access ,to see their certificates. - Pending Approvals - Student requests for certificates approvals appear here . - Change Institute Approvals - Student requests for change of institute appear here .

Installation

For Development

- We are using Truffle for testing and development of this project. - Also you need to have Metamask Browser Extension. - For setting up Truffle (more detailed instruction are avalaible here ) - Steps : - Clone the repo > $ git clone https://github.com/nikhildsahu/E-Certify.git - Setup Truffle - Install truffle > $ npm install -g truffle - Unbox React inside any Directory > $ truffle unbox react - Inside that Directory - Now replace Contracts folder with Contracts folder present in Repo. - Also Copy Complete Repo content in to Client folder. - Run the development console > $ truffle develop - Compile and migrate the smart contracts. > compile > migrate - In the client directory, we run the React app. >// in another terminal (i.e. not in the truffle develop prompt) > $ cd client > $ npm run start - Open http://localhost:3000 to view it in the browser. - Import Account on Metamask with keys given by Truffle . - Testing and Development can be done on these Accounts. - Smart contract changes must be manually recompiled and migrated then only it will work. ------------------------------------- ## Contributing - We're are open to enhancements & bug-fixes. - Feel free to add issues and submit patches. ## Authors - Atharva Udapure - atharvau - Nikhil Sahu - nikhildsahu - Gaurav Sharma - gauravsharma-gs

License

This project is licensed under the MIT - see the LICENSE file for details.

© 2026 GitRepoTrend · nikhildsahu/E-Certify · Updated daily from GitHub