An interactive comparative explorer and analytic suite for blockchain consensus algorithms. This tool allows developers, researchers, and blockchain enthusiasts to explore, compare, and analyze various consensus engines (such as Proof of Work, Proof of Stake, Delegated Proof of Stake, PBFT, and more) across the dimensions of the Blockchain Trilemma and network compatibility.
- Consensus Explorer: Deep dive into 9+ consensus algorithms, their core mechanisms, and real-world implementations (e.g., Bitcoin, Ethereum, Solana, Hedera).
- Side-by-Side Comparison: Select two consensus algorithms to compare their parameters, suitability notes, layer operations, and scripting capabilities.
- Dynamic Compatibility Matrix: Real-time evaluation of blockchain network interoperability. Understand whether two networks share finality assumptions or require wrapped token bridges.
- Blockchain Trilemma Visualizer: Interactive analytics displaying the classic trade-off between Security, Scalability, and Decentralization scores for each consensus engine.
- Theme-able Premium UI: Premium, state-of-the-art dark/light mode dashboard with smooth micro-animations, glassmorphic accents, and unified responsive design.
- Frontend:
- Single-page application architecture using pure HTML5, vanilla JavaScript (ES6+), and CSS variables.
- Styled with Tailwind CSS (via utility class compilation) and curated custom styles for high-fidelity interactive animations.
- Typography using Hanken Grotesk, Inter, and JetBrains Mono via Google Fonts.
- Iconography from Google Material Symbols.
- Backend API:
- Node.js with Express server serving REST API endpoints.
- CORS-enabled for flexible deployments.
- Static file hosting for the client-side single page app.
- Data Store:
- Local JSON-based relational structure (
data/consensus_data.json) containing rich, curated profiles of each mechanism and its host blockchains.
- Local JSON-based relational structure (
Consensus Algorithms/
├── data/
│ └── consensus_data.json # Curated consensus mechanism profiles
├── public/
│ ├── app.js # Frontend client application logic (data fetching, state, rendering)
│ ├── index.html # Dashboard markup, CSS custom property declarations, layout
│ └── styles.css # Custom styling definitions & theme animations
├── .gitignore # Git ignore rules for node_modules, temp downloads, etc.
├── package.json # Project dependencies and script runner
├── README.md # Project documentation
└── server.js # Node.js/Express server logic and API endpoints
You will need Node.js (v16.0.0 or higher recommended) and npm installed on your machine.
-
Clone this repository to your local machine:
git clone https://github.com/<your-username>/consensus-algorithms.git cd consensus-algorithms
-
Install dependencies:
npm install
Start the development server:
npm run devOpen http://localhost:3000 in your web browser to interact with the application.
The temp_downloads directory contains local HTML templates, mockups, or exported design iterations used during the early development phase of the user interface. It is not required for the application to compile or run, and is safely ignored by Git under the .gitignore rules. You can keep it for design reference or delete it if you want a clean directory structure.