DappStats: DApp Ranking Platform with Blockchain Data Collectors

A statistics site for decentralized apps: a front end, a Laravel rewrite and collectors for Ethereum and TRON data

About the project

  • Project: DappStats (earlier Dapptrack), a statistics and ranking site for DApps
  • Industry: Blockchain data
  • Timeline: May 2018 – March 2020
  • Technologies: PHP, Laravel, MySQL, Etherscan and Tronscan APIs, cron and queues
  • Team: a front-end developer, two backend developers and a project manager

DappStats is a statistics and ranking website for decentralized apps, known as DApps. Visitors compare apps by users, transactions and volume, and DApp owners submit their own apps and buy ad placements. The site began as Dapptrack in 2018 and grew into DappStats in 2019, with a redesign and a second blockchain, TRON.

So the product needed two things that are hard to combine: a fast interface and numbers that people can trust. We worked on it in three stages over almost two years, from the first front end in May 2018 to the last fixes in March 2020.

A ranking site lives on trust: one wrong number, and visitors compare it with a competitor.

Stage one: the front end

In May 2018 the site already ran on plain PHP. The client supplied ready designs, and we built the front end on top of the existing code: header and navigation, a responsive grid, the Top 100 table with sorting, the Submit DApp page, the Global chart page, the single-DApp page and the mobile menu.

The charts needed the most care. We set up the charting libraries and moved the data of single-DApp charts out of hardcoded JavaScript into PHP and the database. In addition, the design showed 8 bars, but the data came per hour, so we agreed with the client to show the last 12 hours. The first version went live on 2 June 2018, and client feedback fixes followed during June.

Stage two: a rewrite on Laravel

By autumn 2018 the legacy code had become hard to support. For this reason, we estimated a rewrite on the Laravel framework, although no specification existed. We derived the scope from the code and from calls with the client.

The backend developer started on 5 November and had the rebuilt site on staging by 16 November. The rewrite brought models, controllers, routes, loading of data for tables and charts, an admin panel with banner settings and a votes feature. Earlier, in October, we had already fixed table sorting by rewriting how the table is filled.

Stage three: collecting the data

In June 2019 the client asked for a "remake" of Dapptrack with a new design and TRON support. We received only a code archive and a database dump, because the old repository had been lost. We deployed the base project, restored the database and rebuilt it step by step in a new repository.

Our part was the backend and the data. Collectors read the Etherscan and Tronscan APIs, run on cron and queues, and write hourly and daily aggregates. The interface, the admin panel and the DApp list parser came from the client's side.

In addition, we researched how TRON users log in with a wallet and passed a working prototype to the front-end developer. The public release of DappStats took place on 5 September 2019. After that, we kept fixing and tuning the numbers until March 2020.

Numbers that match the market

The client compared the site with DappRadar, so every figure had to match. In August 2019 TRON showed 7 to 10 times fewer transactions than DappRadar. As a result, we found two causes: the TRON API throttled requests and returned errors, and some collector runs overlapped.

We reworked the TRON scanner in early September 2019. A full run now took about 20 minutes instead of several hours, thanks to indexes and a clean-up of raw data. We keep 30 days of raw TRON transactions and aggregate the rest.

Unique users were a separate problem. You cannot sum unique users across hours, because the same person appears in many hours. So we added a daily table and used it for the 24-hour and longer periods. By late November 2019 the statistics were stable.

What turned out to be hard

  • No history. The old repository was lost, so we rebuilt the project from an archive and a database dump.
  • A memory leak. The inherited collector command grew in memory for two weeks, until we rewrote it with parallel requests.
  • Rate limits. Etherscan allows about 5 requests per second per key, so a run took about 30 minutes, and we used several keys and proxies.
  • Zeros on the front. The site showed zero statistics several times between August and November 2019 because of stopped jobs, API errors and blocked proxies, and we fixed each cause.
  • Two blockchains, two units. Volume in TRX and ETH cannot be added together, so the site shows each chain in its own unit.

Result of the project

The first version of the site went live in June 2018, and DappStats launched publicly in September 2019 with Ethereum and TRON. The site listed more than 1,600 DApps by November 2019.

Looking for a similar data product? See our custom web app development or read how we built a marketplace with an interactive map. The collectors read the Etherscan API and the Tronscan API.

Need a platform that collects and ranks blockchain data? Tell us about your task.

SEE MORE OUR CASE STUDIES

Custom Development

SLINK: Survey Automation App for Windows Tablets

A field and office application for land surveyors: a drawing canvas for lots, structures and traverses, a cloud database and a Web API, built for Windows tablets and PCs.

Technologies:C#, WPFEyeshotSQL ServerAzure DevOps
Read case study
Mobile Development

BELONG: Smart Dating iOS App with an Events Admin Panel

A Xamarin iOS app and a Laravel admin panel on Firebase for an events-based dating startup: events, a calendar, Single and Not Single modes, push notifications and App Store releases.

Technologies:XamarinPHP, LaravelVue.jsFirebase, Yelp
Read case study
EdTech

ABC Stars: Online English School Platform with Live Video Lessons

A web platform for live one-to-one English lessons: a video classroom with shared books, a schedule generator, an admin panel and monthly parent reports.

Technologies:PHP, LaravelVue.jsOpenTokKami API
Read case study
Front-End Development

Timios: Website Front-End Development for a Title Company

Markup of a full website redesign for a US title and escrow company: Zeplin mockups on a Bootstrap grid, delivered into an ASP.NET WebForms site with IE11 fixes.

Technologies:HTML, CSS, JSBootstrapASP.NET WebFormsZeplin
Read case study
Mobile Development

Equipe Trading: Warehouse Pick and Pack Android App

An Android app for scanner devices that guides warehouse staff through picking and packing: order tabs, shelf locations, barcodes, cartons with printed labels and automatic statuses.

Technologies:AndroidREST APIZebra scannerFigma
Read case study
WordPress Development

Swimming Los Angeles: Swim School Website Redesign

A redesigned WordPress site for a swim school: responsive pages from our mockups, JackRabbit class tables, a Google map of four pools and an editable home page.

Technologies:WordPressCherryFrameworkJackRabbitGoogle Maps
Read case study
WordPress Development

Steerlyfe: WordPress Website for a Wellness Marketplace Startup

A WordPress website for a wellness marketplace app: pages built from our mockups, Mailchimp forms, and a shop and blog on one installation.

Technologies:WordPressThe7MailchimpInVision
Read case study
Mobile Development

Ivee: Companion Mobile App for a Smart Speaker

The interface of a companion app for the Ivee voice assistant speaker, built in Ionic: Wi-Fi connection, speakers by room and scenes with music, lights and a remote.

Technologies:IonicMobile interface
Read case study
iOS Development

Tribz: Rebuilding and Rescuing an iOS Personality Quiz App

A native iOS personality quiz app rebuilt from a prototype in Swift, then rescued after an App Store rejection: in-app purchases, Swift 3 migration and sharing fixes.

Technologies:SwiftiOSIn-App PurchasesTestFlight
Read case study
Blockchain Development

HollywoodLand DAO: Custom Blockchain Governance Platform for Decentralized Decision-Making

Decentralized governance solution with smart contracts and Web3 integration that enables secure DAO voting, token management, and transparent project funding.

Technologies:SolidityOpenZeppelinInfuraPHP/WordPressPolygonMetaMask/Ledger
Read case study
Custom Development

Taxi Fleet SaaS Platform: Architecture and Development of a Subscription Service (NDA Covered)

Architecture and development of a multi-tenant subscription platform that runs a taxi fleet end to end: dispatching, pricing, payments and rides that work offline.

Technologies:GoFlutterReactPostgreSQLKafkaRedisClickHouse
Read case study
Mobile Development

Truck Parts Identification App: Recognizing Heavy-Truck Parts from Photos (NDA Covered)

A mobile app and backend that identify heavy-truck parts from photos. A vision model observes, fixed rules decide, and short questions replace guesses.

Technologies:FlutterFastAPILangGraphPostgreSQLMinIODockerClaude API
Read case study
Web Platform MVP

DuelDog: CS:GO Esports Platform MVP with Game-Server Matches and PayPal Payouts

An MVP of an esports platform: players pay an entry fee, play 1v1 CS:GO matches on dedicated servers, and the winner is credited and paid out, with matchmaking, map veto, a server manager and an admin dashboard.

Technologies:ASP.NET MVCC#SourceModPayPalAzure, AWS
Read case study
Mobile and Cloud MVP

IPBuilding: Notification Platform MVP with an Android App and Azure Back End

An MVP that delivers alerts from building devices to the phones of staff: an Android app with push notifications, an ASP.NET back office and an OAuth 2.0 API for the client's servers, hosted on Azure.

Technologies:AndroidASP.NETOAuth 2.0Azure
Read case study
Web Platform

Splandeed: Marketplace Platform with an Interactive Map and Admin Panel

A French marketplace for the architecture and design sector: an admin panel for storefronts, a public site with an interactive map and hosting with SSL.

Technologies:LeafletJavaScriptAdmin panelLinode
Read case study
E-commerce

StrapMate: WooCommerce Subscription Box Store for Smartwatch Straps

An online store with three monthly subscription plans on WooCommerce, reworked from a commercial theme to the client's mockups, with packing lists that show what goes into every parcel.

Technologies:WordPressWooCommerceSubscriptionsStripe
Read case study
Mobile and Logistics

Courier Tracking App for a Print Distribution Business (NDA Covered)

An Android app and a web admin panel that show managers where couriers work: GPS tracking, sectors drawn on a map, push notifications with intercom codes and reports.

Technologies:AndroidNode.jsGPSPush
Read case study
Web Platform

Employee Reviews Directory: Completing a Platform After a CMS Migration (NDA Covered)

A public directory of companies with employee reviews: working links and redirects, reCAPTCHA on every public form, moderation tools and support from 2017 to 2024.

Technologies:PHPYii2jQueryBootstrapreCAPTCHA
Read case study
Web Platform

Art Catalogue Website: Exhibits, Museums and Authors with Social Login (NDA Covered)

A bilingual catalogue of paintings, museums and artists: search, favorites, login with social accounts, layouts for phones and tablets, and an admin panel with content import.

Technologies:PHPWordPressOneAllResponsive
Read case study
Blockchain Development

Big Picture Coin: Token, Lottery and Staking Smart Contracts on Ethereum

Smart contracts for a fixed-price token, a lottery and staking, with tests, a deployment script, audit fixes and launch instructions for the client's team.

Technologies:SolidityTruffleEthereumInfura
Read case study
Blockchain Development

Tezos Trading Bot in C++: DEX Monitoring, Strategies and Telegram Control

A C++ rewrite of a Tezos trading bot: Quipuswap pool monitoring, a market price feed, a rules and strategies framework and Telegram reports, running on the client's machine.

Technologies:C++TezosQuipuswapCoinbase APITelegram
Read case study
Blockchain Development

Waxify: Shopify App for Selling NFTs on the WAX Blockchain

A public Shopify app that sells digital collectibles together with physical goods: a merchant interface, checkout logic and asset issue on WAX, built on the Shopify Node.js template.

Technologies:Node.jsNext.jsShopify APIWAXMySQL
Read case study
E-commerce Development

Element Eight: Shopify Storefront, Subscriptions and Customer Account for a Skincare Brand

Shopify theme development from the client's Figma designs: Shop All, navigation, ingredients pages, auto-replenishment with Recharge and a custom My Account area.

Technologies:ShopifyRechargeJavaScriptCSS
Read case study
Blockchain Development

Crypto Trading Bot Platform: Web App, Risk Controls and Node Scaling (NDA Covered)

A refactor of a Node.js trading bot and a Next.js web platform around it: subscriptions, an admin panel, draw-down and trailing stop controls, a user queue and node rotation.

Technologies:Node.jsNext.jsPostgreSQLDockerEthereum
Read case study

Contact us



Please fill out the form, and we will get back to you once your request has been processed.

You can also send your request directly to our email: info@24gen.space
We will respond as soon as possible after receiving your message.
 






    PDF, DOC, DOCX, JPG, GIF, PNG — up to 20 MB