npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@playform/maintain

v0.2.0

Published

Maintain 🔧

Readme

Maintain 🔧

This CLI tool brings GitHub repository maintenance utilities to your workflow.

Clean 🎁

Dependabot 🎁

Dispatch 🎁

Edit 🎁

Node 🎁

Cloudflare 🎁

NPM 🎁

Rust 🎁

GitHub 🎁

Star 🎁

[!IMPORTANT]

Set Base and Token in your .env before running any commands.

Installation 🚀

There are two ways to use Maintain. Install it globally for repeated use, or run it directly without installing.

Install globally

Using NPM:

npm install -g @playform/maintain

Using Yarn:

yarn global add @playform/maintain

Using PNPM:

pnpm add -g @playform/maintain

Run directly

Using NPM:

npx @playform/maintain < Command > [Arguments...]

Using Yarn:

yarn dlx @playform/maintain < Command > [Arguments...]

Using PNPM:

pnpx @playform/maintain < Command > [Arguments...]

Getting started

Once installed, invoke Maintain followed by a subcommand:

Maintain < Command > [Arguments...]

Clean

Deletes GitHub Actions workflow runs, their logs, and caches for the specified repositories. Omit repositories to target all accessible ones.

Maintain Clean MyRepo AnotherRepo
Maintain Clean

Dependabot

Scans project directories for package manifests (package.json, Cargo.toml, etc.) and generates .github/dependabot.yml alongside a supporting .github/workflows/Dependabot.yml workflow to keep dependencies up-to-date automatically.

Maintain Dependabot

Dispatch

Triggers workflow_dispatch events for every workflow in the specified repositories on the Current ref. Omit repositories to dispatch for all accessible ones.

Maintain Dispatch MyRepo AnotherRepo
Maintain Dispatch

Edit

Configures repository and organization settings: vulnerability alerts, automated security fixes, merge strategies, auto-merge, branch deletion on merge, fork settings, web commit signoffs, and default Actions permissions.

Maintain Edit MyRepo AnotherRepo
Maintain Edit

Node

Generates or updates .github/workflows/Node.yml for Node.js projects (package.json). Configures pnpm with lock-file caching and adds steps for build, test, and prepublishOnly scripts. Uploads ./Target artifacts when a build script is present.

Maintain Node

Cloudflare

Generates or updates .github/workflows/Cloudflare.yml for Cloudflare Workers projects (wrangler.toml). Configures cloudflare/wrangler-action for deployments.

Maintain Cloudflare

NPM

Generates or updates .github/workflows/NPM.yml for packages published to NPM. Adds a publish step via npm publish --legacy-peer-deps --ignore-scripts when build, prepublishOnly, or Build scripts are detected.

Maintain NPM

Rust

Generates or updates .github/workflows/Rust.yml for Rust projects (Cargo.toml). Caches Cargo dependencies and builds in release mode with all features enabled.

Maintain Rust

GitHub

Generates or updates .github/workflows/GitHub.yml for general CI use across repositories.

Maintain GitHub

Workflow

Meta-command that runs all workflow generators — Dependabot, Node, Cloudflare, NPM, Rust, and GitHub — in a single pass.

Maintain Workflow

Star

Reads all package.json files under Base, collects every NPM dependency, and stars their corresponding GitHub repositories.

Maintain Star

Complexity

Discovers and logs package file information across project directories.

Maintain Complexity "src/**/*.ts"
Maintain Complexity

.env Configuration

Create a .env file in the directory where you run Maintain:

# Your GitHub username — used by Clean, Dispatch, Edit.
User="YourGitHubUsername"

# Root directory scanned for package manifests.
# Defaults to the current working directory.
# Used by Star and all workflow commands.
Base="/path/to/your/projects"

# GitHub Personal Access Token with repo, workflow, and admin:org scopes.
# Used by Clean, Dispatch, Edit, Star.
Token="YourGitHubPAT"

Changelog

See CHANGELOG.md for a history of changes to this tool.