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

@cosmstack/repoeject

v0.1.4

Published

Interactive CLI tool to safely find and delete old or inactive GitHub repositories. Clean up your GitHub profile by removing abandoned projects, old experiments, and unused forks.

Readme

🚀 Repo Eject CLI

Early Stage Project - This is an MVP tool with core functionality implemented. See Roadmap for planned features.

A command-line tool that helps developers clean up their GitHub accounts by finding and safely removing old or inactive repositories. Perfect for developers with cluttered GitHub profiles who want to maintain a clean, professional presence.

✨ Why Use Repo Eject?

  • Declutter your GitHub profile - Remove old experiments, abandoned projects, and inactive forks
  • Safe by default - Interactive prompts and dry-run mode prevent accidental deletions
  • Time-saving - Quickly identify inactive repositories instead of manually browsing through dozens of repos
  • Professional presence - Keep only your best work visible to potential employers and collaborators

🎯 Current Features

  • Repository Analysis - Automatically scan and list your GitHub repositories
  • Interactive Selection - Choose which repositories to delete through a user-friendly CLI
  • Safe Deletion - Confirmation prompts and dry-run mode for safety
  • GitHub API Integration - Secure authentication with personal access tokens
  • Colorful Output - Clear, readable terminal interface

📋 Prerequisites

  • Node.js v18 or higher
  • GitHub Personal Access Token with repo scope (How to create one)

🚀 Quick Start

Installation

# Install globally via npm
npm install -g @cosmstack/repoeject

# Or with yarn
yarn global add @cosmstack/repoeject

GitHub Token Setup

  1. Go to GitHub Settings → Developer Settings → Personal Access Tokens
  2. Click "Generate new token (classic)"
  3. Select the repo scope (full control of private repositories)
  4. Copy the generated token

Usage

# Run the interactive CLI
repoeject

# Dry run (see what would be deleted without actually deleting)
repoeject --dry-run

# Skip confirmation prompts (use with caution!)
repoeject --force

# Show help
repoeject --help

The CLI will guide you through:

  1. Authentication - Enter your GitHub token when prompted
  2. Repository Scanning - Automatically fetch and analyze your repositories
  3. Selection - Choose which repositories to delete from an interactive list
  4. Confirmation - Review and confirm your selections before deletion

🛠️ Development

Local Setup

# Clone the repository
git clone https://github.com/CosmStack/repo-eject-cli.git
cd repo-eject-cli

# Install dependencies
npm install

# Build the project
npm run build

# Link for local development
npm link

# Run in development mode
npm run dev

Available Scripts

npm run type-check    # TypeScript type checking
npm run lint          # Code linting
npm run lint:fix      # Fix linting issues
npm run format        # Format code with Biome
npm run build         # Build for production
npm run dev           # Run in development mode

🚧 Roadmap

This project is in active development. Planned features include:

  • [ ] Advanced Filtering - Filter by last commit date, stars, language, etc.
  • [ ] Bulk Operations - Select repositories by criteria (e.g., "all forks older than 1 year")
  • [ ] Repository Backup - Export repository metadata before deletion
  • [ ] Undo Functionality - Restore recently deleted repositories (if possible)
  • [ ] Configuration File - Save preferences and filtering rules
  • [ ] Repository Analytics - Detailed insights about your repository portfolio

🤝 Contributing

We welcome contributions! This project uses Conventional Commits for commit messages.

# 1. Fork and clone the repository
# 2. Create a feature branch
git checkout -b feature/amazing-feature

# 3. Make your changes and commit using conventional commits
git add .
npx cz  # Interactive commit message helper

# 4. Push and create a Pull Request
git push origin feature/amazing-feature

📄 License

MIT License - see the LICENSE file for details.


⚠️ Important: Always review the repositories selected for deletion. This tool permanently removes repositories from GitHub.

Made with ❤️ by CosmStack