github-pewpew
Pew pew needless GitHub repos!
Clean up your unused repos via the CLI within seconds.
Installation and Usage
To install the latest version of github-pewpew CLI, run this command:
npm i -g github-pewpew
To quickly start using it, run the following command:
ghpew
Available commands:
ghpew repos
ghpew codespaces
ghpew help
Why?
Have you ever had too much fun with the GitHub API and ended up creating too many dummy repos? Me too
I made this little CLI tool to clean up repositories quickly. I'm planning to add some flags and regexp to delete in bulk in the future. Let me know if that sounds interesting to you.
Do you want to know more? Visit the official website.
Development
The important parts of the project are the following:
โโโ .github GitHub Actions workflows and repo settings
โโโ src
โ โโโ commands
โย ย โย ย โโโ codespaces.js Contains the command to delete codespaces
โย ย โย ย โโโ repos.js Contains the command to delete repos
โย ย โโโ config.js Contains the configuration manager
โย ย โโโ github.js Business logic: authentication and API calls
โย ย โโโ ui.js CLI interactions
โย ย โโโ utils.js Lightweight utility functions
โโโ test
โย ย โโโ test.js Test coverage with Mocha
โโโ .prettierrc Code formatting configuration
โโโ index.js The main thread of execution
โโโ README.md you're looking at it
To set up your environment to develop this tool, run:
npm install
node index
You can also run node index DEV=true CLIENT_ID=<YOUR_TESTING_CLIENT_ID>
if you want to use your own client id for development and testing purposes.
All the tests are written with mocha and can be run with npm test
.
TODO
- TODO:
--force
flag to avoid confirmation - TODO:
--regex
flag to delete repos matching a regex - TODO:
--list
flag to delete repos from a comma-separated list - TODO:
--archive
and-a
flag to archive repositories instead of deleting - TODO:
ghpew gists
command to delete gists
Questions? Ideas? Bugs?
If you run into any issues or you'd like to share your thoughts, feel free to open an issue in this repository or hit me up on Twitter.
Contributions
Logo designed by Rapha Lopes. Thanks to @sergiou87, @zschiller, @mamuso, @anishde12020, and @jdvr for contributing with their feedback and ideas
License
The tool is available as open-source under the terms of the MIT License.