A CLI tool for managing your dependencies.
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Table of Contents
A CLI tool for managing your dependencies, updating them, and creating PRs. This is built as the submission of the Dyte Hiring Challenge.
The project doesn't uses any third-party libraries, and is built with the following go
packages:
bufio
bytes
context
encoding/csv
encoding/json
fmt
log
net/http
os
github.com/google/go-github/v45/github
github.com/jedib0t/go-pretty/table
github.com/spf13/cobra
golang.org/x/oauth2
depmgmt
is a simple, yet powerful command line tool for managing your dependencies. It checks for outdated dependencies, and if they are outdated, it will update them for you. It will also create a ``fork` of the repo if you don't have one, finally it will also create a pull request for you. If a pull request already exists, it will update it.
Install depmgmt
with go
:
go install github.com/dyte-submissions/dyte-vit-2022-bhavyagoel
depmgmt
is a command line tool for managing your dependencies. It checks for dependencies you have installed, and if they are not installed, it will install them for you. You can also check for outdated dependencies, and if they are outdated, it will update them for you.
Help information:
$ depmgmt -h
Check for outdated dependencies:
$ depmgmt -c path_to_config -i path_to_csv -v name@version
Update dependencies and create a pull request:
$ depmgmt -c path_to_config -i path_to_csv -v name@version -u
Here are some things you need to do before you can get started.
- go
- Ubuntu:
sudo apt-get install golang
- Fedora:
sudo dnf install golang
- Arch:
sudo pacman -S go
- MacOS:
brew install go
- Ubuntu:
- Get a free API Key at github.com
- Clone the repo
git clone https://github.com/dyte-submissions/dyte-vit-2022-bhavyagoel.git
- Install Go packages and
cd dyte-vit-2022-bhavyagoel go get github.com/dyte-submissions/dyte-vit-2022-bhavyagoel go build go install
- Run the app
depmgmt -h
- Create
config.json
file{ "AUTH_TOKEN": "your_auth_token", "TOKEN_USER": "your_token_user" }
See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
Your Name - @GoelBhavya - bgoel4132@gmail.com
Project Link: github.com/dyte-submissions/dyte-vit-2022-bhavyagoel