Skip to content

dyte-submissions/dyte-vit-2022-bhavyagoel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Open in Visual Studio Code

Contributors Forks Stargazers Issues MIT License LinkedIn


Logo

depmgmt

A CLI tool for managing your dependencies.
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Contributing
  5. License
  6. Contact
  7. Acknowledgments

About The Project

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

(back to top)

Built With

Getting Started

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.

(back to top)

Prerequisites

(back to top)

Installation

Install depmgmt with go:

go install github.com/dyte-submissions/dyte-vit-2022-bhavyagoel

(back to top)

Usage

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

Help

Check for outdated dependencies:

$ depmgmt -c path_to_config -i path_to_csv -v name@version

Check for outdated dependencies

Update dependencies and create a pull request:

$ depmgmt -c path_to_config -i path_to_csv -v name@version -u

Update dependencies and create a pull request

(back to top)

Prerequisites

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

Installation

  1. Get a free API Key at github.com
  2. Clone the repo
    git clone https://github.com/dyte-submissions/dyte-vit-2022-bhavyagoel.git
  3. Install Go packages and
     cd dyte-vit-2022-bhavyagoel
     go get github.com/dyte-submissions/dyte-vit-2022-bhavyagoel
     go build
     go install
  4. Run the app
      depmgmt -h
  5. 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).

(back to top)

Contributing

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!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Your Name - @GoelBhavya - bgoel4132@gmail.com

Project Link: github.com/dyte-submissions/dyte-vit-2022-bhavyagoel

Acknowledgments

(back to top)

About

A CLI tool for managing your dependencies.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages