DEV Community

Cover image for Simplify GitHub Workflow Management with My-GitHub-Manager
Shreyas Ghanekar
Shreyas Ghanekar

Posted on

1

Simplify GitHub Workflow Management with My-GitHub-Manager

Simplify GitHub Workflow Management with My-GitHub-Manager

Managing repositories, collaborators, and actions on GitHub can be a daunting task, especially when you have multiple projects to juggle. Introducing my-github-manager, a robust command-line tool designed to streamline your GitHub workflows with ease and efficiency.

Why My-GitHub-Manager?

GitHub provides a feature-rich platform for developers, but managing repositories programmatically can save a significant amount of time, especially for repetitive tasks. My-GitHub-Manager leverages the GitHub API to provide a seamless experience for repository management, collaborator tracking, workflow monitoring, and more.

Key Features:

  • List Users with Read Access: Identify collaborators who have read access to a repository.
  • List Repository Packages: Quickly fetch the packages associated with a repository.
  • Monitor Workflows and Actions: Retrieve workflows and actions to track automation within your repository.
  • Track Repository Projects: Access repository projects to keep an overview of ongoing development efforts.
  • Manage Discussions, Issues, and Pull Requests: Stay on top of repository activity with detailed information about discussions, issues, and pull requests.

  • Commit History: Review commit history to ensure consistent development practices.

  • Repository Invitations and Emails: Easily manage repository invitations and associated email addresses.

  • User Management: Follow users, list public repositories of any user, and fetch detailed profile data.

Getting Started

Installation

You can install my-github-manager globally using npm:

npm install -g my-github-manager
Enter fullscreen mode Exit fullscreen mode

Prerequisites

GitHub Personal Access Token (PAT): Ensure you have a PAT with the following scopes:

repo

repo:status
repo_deployment
public_repo
repo:invite
security_events
read:user
user:email

You can create a PAT by navigating to your GitHub Developer Settings.

jq: Install jq for parsing JSON responses:

sudo apt-get install jq  # For Debian/Ubuntu
brew install jq          # For macOS
Enter fullscreen mode Exit fullscreen mode

Usage

Run the tool with:

my-github-manager

The tool will prompt you to enter your GitHub username and PAT for authentication. Once authenticated, you can navigate through the interactive menu to perform various actions.

Highlighted Commands

List Collaborators with Read Access
Identify collaborators with pull access to your repository:

my-github-manager
Select "List users with read access"

Fetch Repository Packages

List all packages in a repository:

my-github-manager
Select "List packages in the repository"

Monitor Workflows and Actions

Retrieve workflows and actions for automation insights:

my-github-manager
Select "List workflows" or "List actions"

Manage Repository Discussions
Fetch and view repository discussions to stay updated:

my-github-manager
Select "List discussions"

Advanced Error Handling and Retry Mechanism

My-GitHub-Manager ensures robust error handling. For example, if a request fails due to an incorrect repository name or an expired PAT, the tool prompts you to retry the operation with corrected inputs.

Why Developers Love It

  • Interactive Menu: Navigate through repository management tasks effortlessly.
  • Error Feedback: Receive detailed error messages with actionable suggestions.

Customizable: Easily extend the script to add more GitHub API endpoints.

Open Source and Contributions

This project is open source and available on GitHub. Contributions are welcome! Feel free to raise issues, suggest features, or submit pull requests.

Conclusion

My-GitHub-Manager is your go-to tool for simplifying GitHub management tasks. With its interactive features and seamless integration with the GitHub API, it saves time and boosts productivity for developers.

Try my-github-manager today and revolutionize the way you manage your GitHub repositories!

Heroku

Simplify your DevOps and maximize your time.

Since 2007, Heroku has been the go-to platform for developers as it monitors uptime, performance, and infrastructure concerns, allowing you to focus on writing code.

Learn More

Top comments (1)

Collapse
 
tyler36 profile image
tyler36 •

Thank you for the article.

This project is open source and available on GitHub.

github.com/ShreyashPG/my-github-ma... displays as 404.

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Dive into an ocean of knowledge with this thought-provoking post, revered deeply within the supportive DEV Community. Developers of all levels are welcome to join and enhance our collective intelligence.

Saying a simple "thank you" can brighten someone's day. Share your gratitude in the comments below!

On DEV, sharing ideas eases our path and fortifies our community connections. Found this helpful? Sending a quick thanks to the author can be profoundly valued.

Okay