

Denamo Markos
End-to-End Web3 dApps — Using Algorand Blockchain
Introduction
The client, 10 Academy, would like to solve the challenge of ensuring that certificates are available to all trainees in a secure way, and (if possible) that certificate holders can benefit from smart contract actions now and in the future. At present, certificates are distributed as simple PDF files, without the ability to verify their authenticity nor can 10 Academy undertake smart actions with the trainees/their contracts.
Objective
10 Academy has partnered with Algorand to use the Algorand Blockchain as the foundational element of the NFT, and this must now be implemented. In this project, we will build end-to-end Web3 dapps on the Algorand Blockchain that will help 10 Academy generate and distribute Non-Fungible Tokens (NFTs) as certificates that will represent the successful completion of a weekly challenge to trainees, and allow trainees with NFTs to interact with a smart contract to perform predefined actions.
The Algorand Blockchain
Algorand is a blockchain network created in 2017 by Silvio Micali, an MIT professor who won the Turing Award for his work in cryptography. Algorand is a decentralized permissionless blockchain protocol that anyone can use to develop applications and transfer value. The Algorand protocol is powered by a novel consensus algorithm that enables fast, secure, and scalable transactions.
Info: Since the beginning of 2022, the Algorand (ALGO) blockchain has added more than 9 million new accounts to its network. The total number of accounts on Algorand at the turn of the year was 17,373,299, while at the time of writing (Jun 2022), this number is 26,080,829 according to the AlgoExplorer data.
Core Features
The Algorand protocol is designed to solve three of the biggest problems most blockchains face: security, scalability, and decentralization. Dubbed as the "blockchain trilemma," the Algorand network claims to address the following three major issues:
Feature | Description | Implementation |
---|---|---|
Security | Protected against malicious attacks | Network and consensus protocol level security |
Scalability | High transaction throughput | Efficient consensus protocol without heavy computation |
Decentralization | No central authority | Random and confidential node selection |
Algorand's Native Cryptocurrency
The native currency of the Algorand network is called ALGO. ALGO tokens are used to:
- Pay for transaction fees
- Reward consensus participants
- Enable fast transactions (< 4 seconds)
- Maintain minimal transaction costs
Info: During the time of writing ALGO is trading at around $0.3 with a Market capitalization of $2,127,446,644 (Rank#30)
Project Components
Technology Stack
Component | Technology | Purpose |
---|---|---|
Design | Figma | UI/UX prototyping |
Frontend | React & Ant Design | User interface development |
Backend | Flask | API development |
Database | MongoDB | Data storage |
Blockchain | Algorand | NFT and smart contract platform |
Project Implementation
Functional Requirements
- Login
- Goal: Authenticate registered users
- Actor: Staff, Trainee
- Precondition: User has credentials and is logged out
- Post-condition: User is logged into account
- NFT Certificate Opt-in
- Goal: Request NFT certificate transfer
- Actor: Trainee
- Precondition: Trainee is logged in
- Post-condition: Transfer request generated
- NFT Transfer Approval
- Goal: Approve NFT certificate transfer
- Actor: Staff
- Precondition: Staff is logged in
- Post-condition: NFT transferred to trainee's address
- NFT Transfer Decline
- Goal: Decline transfer request
- Actor: Staff
- Precondition: Staff is logged in
- Post-condition: Transfer request declined
- Transfer Status Check
- Goal: Check transfer request status
- Actor: Trainee
- Precondition: Trainee is logged in
- Post-condition: Status checked
Conclusion
Certificate distribution on a blockchain network is the optimal solution for any certification process due to its:
- Easy implementation
- Security features
- Verifiability
Info: The blockchain-based certificate system provides immutable proof of certification that can be easily verified by any party.
Future Plan
Adding Smart contracts that allow execution of predefined smart actions on the Algorand Standard Assets.