██████╗███████╗██████╗ ████████╗██╗███████╗██╗ ██╗ ██████╗██╗ ██╗ █████╗ ██╗███╗ ██╗ ██╔════╝██╔════╝██╔══██╗╚══██╔══╝██║██╔════╝╚██╗ ██╔╝ ██╔════╝██║ ██║██╔══██╗██║████╗ ██║ ██║ █████╗ ██████╔╝ ██║ ██║█████╗ ╚████╔╝█████╗██║ ███████║███████║██║██╔██╗ ██║ ██║ ██╔══╝ ██╔══██╗ ██║ ██║██╔══╝ ╚██╔╝ ╚════╝██║ ██╔══██║██╔══██║██║██║╚██╗██║ ╚██████╗███████╗██║ ██║ ██║ ██║██║ ██║ ╚██████╗██║ ██║██║ ██║██║██║ ╚████║ ╚═════╝╚══════╝╚═╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚═╝ ╚═══╝ ------------------------------------------------- Yes to hiring, No to frauds!
This project is a decentralized certificate management system built on the Internet Computer Protocol (ICP). It enables users to issue, store, and verify certificates using blockchain and IPFS.
- Plug Wallet installed in your browser
- Node.js and npm installed
- DFX SDK installed (for Internet Computer development)
-
Start the Internet Computer local network
dfx stop dfx start --background
-
Deploy the project to the Internet Computer
dfx deploy
-
Generate TypeScript bindings (if applicable)
dfx generate
-
Replace the Canister ID in
App.jsx
- Locate the Canister ID generated in
dfx deploy
- Replace the old Canister ID in
App.jsx
- Locate the Canister ID generated in
-
Navigate to the frontend directory
cd hello_frontend
-
Start the frontend application
npm start
Allows authorized users to issue new certificates by entering:
- Certificate Name
- Recipient's Principal ID
- IPFS Certificate Hash
Use the following test hashes for authentication:
bafybeifjnuxc3u4uzeae5a7m56ogjwamnhjxbv2hlhseeiawgsrrqauohq
bafkreifadclxwtjugeohx632vqp77gy44at4nngt7fukbdmot6sfdlf7eu
bafybeig2kwlilgjw6o46xabp3l6bbjlikkkqesiausm54r72dddoplo4xi
Displays all certificates associated with the logged-in user. Certificates are loaded automatically from the blockchain.
Allows verification of a certificate using the Principal ID of the certificate holder.
MIT License