Skip to content

npm/statusboard

Repository files navigation

📊 statusboard

npm.github.io/statusboard

A single view to help monitor the status/health of the @npm/cli teams's Open Source Projects.

Data

Adding a project

GitHub search query for org:npm topic:npm-cli fork:true

To be included here a repo must be in the npm org and have the npm-cli topic added to it. The data is rebuilt daily so the repo should appear by the next day.

Repos are also searched for workspaces via the package.json#workspaces array and those are included if they do not have package.json#private.

Removing a project

Projects are removed from the list if they are archived on GitHub and deprecated on the npm registry, or if they are archived and moved to a workspace of another repo we track. The topic npm-cli does not need to be removed and should be kept on GitHub repos for historical reference.

Developing:

To update maintained projects:

Locally: npm run fetch:maintained -w data

CI: gh workflow run fetch-maintained.yml

To update daily data:

Locally: npm run fetch:data -w data

CI: gh workflow run fetch-data.yml

Serve / Publish Site

Serve: npm run dev -w www

Publish: The site is published to GitHub Pages on all pushes to main.

Forking

This project aims to have some portability, but it will not work out-of-the-box if forked. Here are the things we're aware of that you should change if you fork this:

  • Enable the GitHub Action workflows after forking. They are not enabled by default on forked repos
  • Update misc links and references to your org
  • Delete all historical data from workspaces/www/lib/data/**/*.json
  • Update the necessary config items in:
  • Have a AUTH_TOKEN=${{ GITHUB TOKEN}} in workspaces/data/.env if you are fetching data locally. All the data here is from open source repos and packages on the npm registry. So if you're data is private this token will need to have the proper scopes. You can look in data/lib/api/ to see all the calls that are made.
  • Run npm run fetch:maintained -w data and npm run fetch:data -w data to populate your new data