Skip to content

swiiny/blockmetrics

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

blockmetricsblockmetrics

Blockmetrics mono repo 📦

contributions welcome Linters Website GitHub GitHub commit activity

Blockmetrics is a blockchain metrics platform that provides data on the blockchain ecosystem.

A tool to compare blockchains according to several parameters such as reliability, energy consumption, number of tokens and much more.

The main objective is to offer to everyone an easy way to understand what a blockchain is, what the implications of its use are and to be able to make a informed choice before using one blockcahin than another.

Visit Blockmetrics to get more information about blockchains

Services

Working configuration ✅

  • Docker engine v20.10.17
  • Docker compose v2.6.1
  • Node v16.13.1
  • Npm v8.13.2

Setup 🔨

1. Clone the repo

git clone https://github.com/JeremyTheintz/blockmetrics.git
cd blockmetrics/packages

2. Environnement variables

cp .env.example .env

Fill the new .env file with your local variables

3. Build and run the database, the server and the APIs using docker-compose

docker-compose up --build -V

During the boot process, the Webscoket API, REST API and server will automatically reboot until the database has started

The routine running at 02:00 CEST in production will run according to the following config in development environnement rule.minute = [0, 10, 20, 30, 40, 50];

The routine running at 12:00 CEST in production is deactivated in development environnement to prevent fetch data when it is not published on the external API provider

4. Build and run the frontend

// ../blockmetrics/packages

cp .env frontend/.env
cd frontend
npm install
npm run dev

Once it has started, go to http://localhost:8080

Roadmap ✨

  • ✨ Integrate blockchains comparison with same transactions count per day
  • ✨ Add comparison with real life data
  • ✨ Add button to add blockchain to MetaMask
  • ➕ Add Moonbeam blockchain
  • ➕ Add Arbitrum blockchain
  • ➕ Add Optimism blockchain

TODO

Global

  • ✅ Add Cypress E2E tests
  • 👷 setup github actions to run tests before merge to production

Server

  • 🧐 Fetch and put in blockchain table the testnet node count for PoS blockchains

Frontend

  • Add warning icon when data looks not up to date
  • ♿ Add accessibility
  • 🚸 Explain engineering notation
  • 🚸 Explain why the weight of each property from ranking system
  • 🚸 check if trendline can be displayed on bar chart

Integrated Blockchains