Skip to content

πŸ—‘οΈ A CLI tool to manage and clean up GitHub forks with interactive prompts.

License

Notifications You must be signed in to change notification settings

bismarkhenao/forkaway

Repository files navigation

Forkaway 🧹

A CLI tool to help you clean up your GitHub fork repositories efficiently.

Features ✨

  • πŸ” List all your fork repositories
  • πŸ—‘οΈ Delete multiple forks at once
  • βœ… Interactive selection with visual feedback
  • πŸ“Š Progress tracking with status bars
  • 🎯 Bulk or selective deletion options
  • πŸ”’ Secure GitHub token handling
  • πŸ’« Beautiful CLI interface

Prerequisites πŸ“‹

  • Node.js (v18 or higher)
  • GitHub Personal Access Token (will be prompted during first run)

Installation πŸš€

Option 1: Using npm (recommended)

npm install -g forkaway

Option 2: Using curl (universal install)

curl -o- https://raw.githubusercontent.com/bismarkhenao/forkaway/main/install.sh | bash

or using wget:

wget -qO- https://raw.githubusercontent.com/bismarkhenao/forkaway/main/install.sh | bash

Setup πŸ”§

  1. Generate a GitHub token at https://github.com/settings/tokens

  2. Enable these permissions:

    • repo (Full control of private repositories)
    • delete_repo (Delete repositories)
  3. Add the token to your shell configuration:

    For zsh:

    echo 'export GITHUB_TOKEN=your_token' >> ~/.zshrc
    source ~/.zshrc

    For bash:

    echo 'export GITHUB_TOKEN=your_token' >> ~/.bashrc
    source ~/.bashrc

Usage πŸ’»

Simply run:

forkaway

The interactive CLI will guide you through:

  1. Scanning your GitHub account for forks
  2. Choosing between:
    • Deleting all forks (with safety confirmations)
    • Selecting specific forks to delete
  3. Reviewing selected repositories
  4. Confirming and executing deletions with progress tracking

Visual Feedback πŸ“Š

  • Progress bars show deletion status
  • Spinners indicate active operations
  • Color-coded success/failure messages
  • Detailed error reporting
  • Operation summary at completion

Safety Features πŸ›‘οΈ

  • Multiple confirmations for bulk deletions
  • Review step before final deletion
  • Clear error messages
  • Ability to cancel at any point

Contributing 🀝

We welcome contributions! Please see our Contributing Guide for detailed instructions on how to:

  • Set up your development environment
  • Make changes
  • Run tests
  • Submit pull requests
  • Follow our coding standards

License πŸ“„

MIT

Support πŸ’ͺ

If you encounter any issues or have questions: