API scaffolders
After inspecting data retrievable on the most popular block explorer's endpoints, a Mock API should be designed to return static data for frontend integration
Endpoints to be inspected:
-
Listing entities
- List transactions
- List blocks
- List all token transfers
- List specific token transfers - Note individual tabs: Transactions & Holders
-
Inspecting a particular entity
- Inspect transaction
- Inspect block
- Inspect token transfer
- Inspect EOA - Note individual tabs: Transactions & ERC-20 Token Txns
- Inspect contract - Note individual tab: Contract
Choice of language
LibreScan goes with JavaScript for its API component. The reasons are as follows:
JavaScript is still the most popular language
Since the API component reads from the Database and can restructure it in endless possible ways to be consumed by the frontend, it was crucial to pick a widely used language so we can have many contributors.
Performance
Python was another option considered here for above reasons, but it is still less popular and WAY less performant than NodeJS. If you want to see the actual numbers, check the popular Benchmark game by Debian.
While there are way more performant solutions than NodeJS (Go, Rust, C ...) they have way smaller communities (in descending order).
Since the heavy lifting will be done by the scraper module anyway, NodeJS is a sane choice for the API component as it has to handle a very limited workflow.
> register < as a contributor
The detailed roadmap of LibreScan will be laid out in January 2022. It is highly important that the team has a ballpark overview how many contributors we can expect!
If you share the same mindset and you are willing to add value to the crypto community sign up via this link.