badges / badges/shields

badge suggestion: dependent packages and dependent repos from ecosyste.ms

Open
#9,846 0 comments 0 reactions 0 assignees View on GitHub
service-badge
Dominant language
JavaScript
Stars
27.2k
Forks
5.6k
Avg merge
1d 8h
Merged PRs (30d)
46

Description

### 📋 Description

https://ecosyste.ms/ collates and publishes open data about a variety of package ecosystems.

I suggest using their API to create 2 badges showing

- number of dependent packages and
- number of dependent repos

### 🔗 Data

Docs: https://packages.ecosyste.ms/docs/index.html

Some example API calls:

- https://packages.ecosyste.ms/api/v1/registries/npmjs.org/packages/got
- https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/django
- https://packages.ecosyste.ms/api/v1/registries/hub.docker.com/packages/library%2Fdebian

Rate limit: https://github.com/ecosyste-ms/packages/#api
5000/req per hour (pretty generous) with option to contact and request an increase

### 🎤 Motivation

I think the case where this API would be most useful are the `dependent_packages_count` and `dependent_repos_count` fields. At the moment, we have libraries.io badges for these but given the problems we are having in https://github.com/badges/shields/issues/9839 I think implementing some badges that show this data from ecosyste.ms would give users somewhere to go if we aren't able to get an upstream solution to help us get the token pool working again and have to deprecate.

There could be other useful data points that are available from this API, although a lot of them would just replicate data available from the upstream registries themselves (e.g: latest version, downloads, etc). I wouldn't want to get too bogged down in reproducing data points we already get straight from the registries, especially given there is a rate limit to stay under.

Contributor guide

Open the contributing guide

Research direction

Start with the ecosyste.ms package API documentation and the example package endpoints in the issue. Identify how Shields implements existing libraries.io dependency badges and determine the registry and package inputs needed for npm, PyPI, and Docker Hub. Done means two badges report dependent package and dependent repository counts with appropriate tests and rate-limit handling.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
api, backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.