Github CLI application
Ever wanted to browse your repos through CLI? Or create a new one without the hassle of opening the browser? Now you can!
What is this project?
This project uses Github v4 API, Github v3 API and Python to provide you with command line interface. Thus you don't have to leave Guake (or you other favourite terminal) in order to create new repo for your next project, or to see URL of you existing projects, or do whatever the API allows you.
Focus of this project is on simplicity - arguments are intuitive and provided as keywords (some flags are also available).
All you have to do (except installing this application, of course) is to register you API key within Github. To do so, navigate to your settings and choose
Personal access tokens section, create new token with full rights (you can actually omit rights you know you don't want to use). Copy this token and save it to file
api_key in project directory. Beware, make sure no one shady gains access to it, as this key enables anyone to do anything with your Github account.
This project requires Python>=3.6
From PyPI via
execute in terminal
pip install github-cli-app
or in case you have both
pip3 install github-cli-app.
It may also occur that you get error like
pip not found, or so. In that case, make sure you have appropriate
If you have and it still doesn't work, execute following command
python -m pip install github-cli-app
python3 -m pip install github-cli-app
(for troubleshooting see Installation from PyPI)
- clone this repository (or download and extract release) and navigate to its root
pip install .If you want to install only as a user, execute
pip install --user .If you want to always use the newest version, execute
pip install -e .(or also with user flag). This will allow executing
githubdynamically, so you can have new functionality with every
Features and usage
(tick marks implemented features)
github with following options and/or arguments
[ this means optional ]:
create-repository REPOSITORY_NAME [--private] [--description DESCRIPTION]
create-new-project REPOSITORY_NAME PROJECT_NAME
create-pull-request REPOSITORY_NAME PR_TITLE PR_HEAD_BRANCH PR_TARGET_BRANCH [PR_BODY]
more to come!
- Michal Polovka @miskopo
This project is in no way affiliated with Github and it's not official part of Github per se (yet).