50 Portfolio Project Ideas for Blockchain Engineers
Blockchain engineering goes beyond smart contracts into the infrastructure layer. These projects help you understand how blockchains actually work at the protocol level.
Core Blockchain Concepts
Understand blockchain fundamentals by building them.
Simple Blockchain from Scratch
Build a basic blockchain with blocks, hashing, and chain validation in any language.
Proof of Work Implementation
Add mining with difficulty adjustment to your blockchain.
Transaction Pool (Mempool)
Implement a transaction pool with validation and prioritization.
Merkle Tree Implementation
Build Merkle trees for efficient transaction verification.
UTXO Model Implementation
Build Bitcoin-style unspent transaction outputs for your chain.
Account Model Implementation
Build Ethereum-style account-based state for your chain.
Consensus Mechanisms
Implement different consensus algorithms.
PBFT Implementation
Practical Byzantine Fault Tolerance for permissioned networks.
Proof of Stake Validator
Build a basic PoS system with staking and validator selection.
Delegated Proof of Stake
Add delegation mechanics to proof of stake.
Tendermint-style Consensus
Implement BFT consensus with propose-prevote-precommit rounds.
Proof of Authority Chain
Build a PoA chain for private/consortium use cases.
Longest Chain Rule Implementation
Handle chain reorganizations and fork choice correctly.
Networking and P2P
Build the network layer for blockchain nodes.
P2P Node Discovery
Implement peer discovery using DHT or gossip protocols.
Block Propagation Network
Gossip new blocks efficiently across the network.
Transaction Broadcasting
Propagate transactions to all nodes efficiently.
Peer Scoring System
Score peers based on behavior and prioritize good actors.
Network Simulator
Simulate network conditions for testing consensus.
Light Client Protocol
Implement light client sync using block headers and proofs.
State and Storage
Manage blockchain state efficiently.
Merkle Patricia Trie
Implement Ethereum's state trie for efficient state proofs.
State Pruning System
Prune old state to reduce storage requirements.
State Sync Protocol
Fast sync state from other nodes without replaying blocks.
Archive Node Implementation
Store and serve historical state for any block.
Database Backend Comparison
Benchmark LevelDB, RocksDB, and other backends for blockchain use.
Execution Environments
Build and understand virtual machines.
Simple Stack-based VM
Build a basic virtual machine for executing transactions.
Gas Metering System
Implement gas metering to prevent infinite loops.
EVM Implementation
Build a subset of the Ethereum Virtual Machine.
WASM Runtime Integration
Integrate WebAssembly runtime for smart contract execution.
Precompile Implementation
Add precompiled contracts for cryptographic operations.
Security and Cryptography
Implement blockchain cryptography.
Signature Verification
Implement ECDSA and EdDSA signature verification.
BLS Signature Aggregation
Implement BLS signatures for efficient multi-party signing.
VDF Implementation
Build a verifiable delay function for randomness.
Threshold Signature Scheme
Implement t-of-n threshold signatures for multi-sig.
Hash Function Comparison
Benchmark and compare hash functions for blockchain use.
Node Operations
Build tools for running nodes.
Node Monitoring Dashboard
Monitor node health, sync status, and peer connections.
RPC Server Implementation
Build JSON-RPC interface for node interaction.
Block Explorer Backend
Index blockchain data for explorer queries.
Node Deployment Automation
Automate node deployment with Docker and Kubernetes.
Checkpoint Sync Implementation
Fast sync from trusted checkpoints.
Advanced Topics
Cutting-edge blockchain engineering.
Sharding Prototype
Implement basic sharding with cross-shard communication.
Data Availability Sampling
Implement DAS for light client data availability verification.
MEV-aware Block Building
Build a block builder that extracts and distributes MEV.
Account Abstraction Implementation
Implement ERC-4337 style account abstraction.
Blob Transaction Support
Implement EIP-4844 blob transactions for L2 data.