An interactive learning platform designed to complement the Blockchain Basics Course on Cyfrin Updraft. This application provides hands-on demonstrations of fundamental blockchain concepts, cryptography, and consensus mechanisms.
This demo application is built to help students understand blockchain technology through interactive visualizations and practical examples. It covers essential concepts including hashing, digital signatures, proof-of-work, proof-of-stake, and decentralized finance (DeFi) operations.
Demonstrates real-world problems with traditional financial systems through interactive challenges. Users experience scenarios such as:
- Cross-border payments and banking restrictions
- Hyperinflation and currency instability
- Banking hours limitations
- Government withdrawal limits
- Censorship and surveillance issues
This app helps users understand why decentralized systems matter by showing the limitations of centralized financial infrastructure.
Interactive demonstrations of cryptocurrency wallet operations and DeFi protocols:
- Wallet management and transaction signing
- Decentralized exchange (DEX) token swaps
- DeFi staking and rewards claiming
- Understanding gas fees and transaction confirmation
Step-by-step exploration of Elliptic Curve Digital Signature Algorithm (ECDSA):
- Seed phrase generation (BIP39)
- Hierarchical deterministic wallet key derivation (BIP44)
- Public key derivation from private keys
- Ethereum address generation
- Message signing and signature verification
- Understanding cryptographic proof of ownership
Inspired by the BLS Labs Demo.
Comprehensive simulation of Ethereum's proof-of-stake consensus mechanism:
- Hash functions and data integrity
- Block creation and signing
- Blockchain validation and immutability
- Validator selection and staking
- Consensus voting and finalization
- Attack scenarios and security mechanisms
Inspired by Anders Brownworth's Blockchain Demo.
- Node.js (version 16 or higher)
- npm or yarn package manager
Clone the repository:
git clone https://github.com/Cyfrin/blockchain-basics-demo-app.git
cd blockchain-basics-demo-appInstall dependencies:
npm installRun the development server:
npm run devThe application will be available at http://localhost:5173
Create an optimized production build:
npm run buildPreview the production build:
npm run preview- React 18 with TypeScript
- Vite for fast development and building
- Tailwind CSS for styling
- Ethers.js for Ethereum utilities
- Lucide React for icons
This application is designed to be used alongside the Blockchain Basics Course on Cyfrin Updraft. Each demo corresponds to specific course modules and reinforces the concepts taught in the videos.
We recommend using these demos as you progress through the course to gain practical, hands-on experience with the theoretical concepts.
We welcome contributions from the community! Whether you're fixing bugs, improving documentation, or adding new features, your help is appreciated.
- Fork the repository
- Create a new branch for your feature or bug fix
- Make your changes with clear, descriptive commit messages
- Test your changes thoroughly
- Submit a pull request with a detailed description of your changes
This project is open source and available under the MIT License.
Built with support from the Cyfrin team and the blockchain education community. Special thanks to all contributors who help make blockchain education accessible and interactive.
For course-related questions, visit Cyfrin Updraft. For application issues, please open an issue on GitHub.