www.jsdelivr.com
www.jsdelivr.com copied to clipboard
New stats
Need a new system to pull public stats to show on the site.
What info to show:
- Total CDN hits/Total bandiwdth/Total DNS requests
- Total hits over time/Hits per CDN over time/DNS requests over time
- Most popular projects per hits/per bandwidth
What else can we show?
Requests/bandwidth per country/per TLD, response times per country (cedexis). Maybe top package authors.
Also data from cdnperf.
Trending projects (increase in daily/weekly/monthly hits)
Maybe add response time and uptime as well
There should also be a page for this: https://data.jsdelivr.com/v1/stats/packages We only show the top 10 on the homepage. Should have a data table with all 100 and maybe also pagination. Also filtering npm/gh/all.
What else do we need?
- Remove load-balancing references
- Inspiration https://radar.cloudflare.com/
Network data:
- Requests/bandwidth overall and per CDN (one summary value for the selected time period, plus one summary value per CDN).
- Requests/bandwidth per country. We again have this per CDN too, so 5 values per country - I'm thinking either a map with CDN breakdown on hover or a big data table (one summary value for the selected time period, plus one summary value per CDN).
- Requests/bandwidth overall and per CDN over time (chart with grouped values for the selected time period, grouping configurable by the user - this is basically what we have on package pages, but with overall data for the whole network).
- Requests/bandwidth per country and per CDN over time (chart with grouped values for the selected time period, grouping configurable by the user - this is basically what we have on package pages, but with overall data for the whole country). We obviously can't show a big chart for each country by default, this one could be opened by the user by clicking on the map/table from point 2.
- Cache hit rate per CDN (just one number or daily chart?)
- TODO: can we get it per country?
Network/platform data:
- Top platforms. We have a separate number for each country/platform/version triple. This should be a table showing platform name (e.g., Windows), the number of requests, bandwidth, and maybe also % share for each. Additional filters available to the user:
- country (shows values for the selected country only instead of all),
- group platform versions (on/off, default on), instead of "Windows" shows separate rows for "Windows 10", "Windows 11".
- Clicking a platform name in the previous table should change the view to country breakdown for that platform. I.e., I click "Windows 10" and the table first column now lists countries instead of platforms, and all data are for Windows 10 only.
Network/browser data:
- Exactly the same as platform data but shows browser names and versions instead.
Package data:
- Most popular projects (type, name, requests, bandwidth) as a data table that supports pagination and filtering by type (type is npm/GitHub/all).
- Trending projects (increase in daily/weekly/monthly hits). Not 100% sure about doing this one yet but we can try.
- Maybe later: top package authors.
If the page gets too long, we can have tabs or separate pages for "network stats" and "package stats" or even more categories.
TODO for me: https://github.com/jsdelivr/jsdelivr-log-parser/issues/72, https://github.com/jsdelivr/jsdelivr-log-parser/issues/81