github-pewpew v1.3.1
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.