The website will include :
dashboard : for students: view own certificates
for institute(here marvel): issue certificates ,view issued certificates
login/signup: account for students and institute
anyone can verify the the certificate by entering the ipfs hash
only institute account can access issuecertificate route.
why to use blockchain in this?
because when we upload the certificate to ipfs and store the hash in blockchain it will be permanently stored in the blockchain and cannot be edited ,any tampering with the certificate will return the hash as invalid.
it will provide immutablity , safety and security.
Tech stack used:
ejs,html,css-for frontend
node,express,-backend
firebase for user auth
pinata ipfs as a database for certificate storing
ganache - local blockchain server
truffle- set of tools for blockchain development
docker- for containerizing for anyone to run on their machine
update till july :
added firebase userauth
update till 27/7:
used pdf-lib node library for pdf genration.
update till 30/7:
corrected broken css links and styling .
restricted /issuenew route only acccessible for institute acc.
update till 9/8:
wrote solidity code for certificate generation contract .
pdf certificate designing : alignment and design of elements is complicated
using the node library "pdf-lib" which takes input from the /issuenew route's form content ,looking for some easier and cleaner way.
connecting to ganache and pinning files to pinata and test the working .
completing certificate verifying part .
hosting website.
changing from ejs to react , check for any vulnerabilities, host the website , optimise smart contracts to charge less gasfee and move to ethereum mainnet from local network.