JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 21
  • Score
    100M100P100Q38466F
  • License MIT

CLI tool that lets you download specific folders from GitHub repositories without cloning the entire repo.

Package Exports

  • git-bro
  • git-bro/src/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (git-bro) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

git-bro

NPM version License: MIT Downloads GitHub issues GitHub stars

Get detailed insights for GitHub repositories without cloning the entire codebase

InstallationUsageFeaturesExamplesConfigurationTroubleshootingContributingLicense

Why git-bro?

Have you ever needed detailed insights for a GitHub repository? Or wanted to audit dependencies, explore commit history, or analyze project metadata without downloading the entire codebase? git-bro solves these problems by providing specific commands to generate insights, audit dependencies, explore commits, and generate project folder structures, saving you bandwidth, time, and disk space.

Features

  • Generate Insights: Get detailed insights for a GitHub repository
  • Audit Dependencies: Analyze dependencies in a GitHub repository
  • Explore Commits: View commit history of a GitHub repository
  • Generate Structure: Generate a project folder structure

Installation

npm install -g git-bro

This installs git-bro as a global command-line tool accessible from anywhere in your terminal.

On-demand Usage

npx git-bro <github-repo-url>

Run git-bro directly without installation using npx.

Command Line Options

Option Description
-V, --version Show version number
-h, --help Show help

Commands

Command Description
insights <repo> [options] Generate detailed insights for a GitHub repository
audit <repo> [options] Audit dependencies in a GitHub repository
commits <repo> [options] Explore commit history of a GitHub repository
generate Generate a project folder structure

Commits Feature Options

Option Description
-a, --author <author> Filter commits by author
-f, --file <file> Filter commits by file path
-c, --conflicts Show only commits with merge conflicts
-l, --limit <number> Limit number of commits (default: "50")
-h, --help Display help for command

Audit Feature Options

Option Description
--type <type> Type of dependency file (package.json, requirements.txt)
--output <path> Output directory for audit reports

Examples

Generate Insights for a Repository

git-bro insights username/repository

Audit Dependencies in a Repository

git-bro audit username/repository

Explore Commit History

git-bro commits username/repository

Generate Project Folder Structure

git-bro generate

Configuration

git-bro works out of the box without configuration. For rate-limited GitHub API usage, authentication support is under development.

Troubleshooting

Common Issues

Rate Limit Exceeded

Error: Request failed with status code 403

Solution: GitHub limits unauthenticated API requests. Wait a few minutes and try again.

Invalid URL Format

Error: Invalid GitHub URL format

Solution: Ensure your URL follows the pattern: https://github.com/owner/repo

Repository Not Found

Error: Repository not found

Solution: Verify the repository name and ensure it is accessible.

Contributing

Contributions make the open-source community an amazing place to learn, inspire, and create. Any contributions to git-bro are greatly appreciated.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

See the open issues for a list of proposed features and known issues.

Roadmap

  • Add GitHub token authentication
  • Support for GitLab and Bitbucket repositories
  • Download from specific commits or tags
  • Dry run mode
  • CLI interactive mode

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • GitHub API for making this tool possible
  • Everyone who has provided feedback and suggestions

Made with ❤️ by Adwait-Borate and ShreyashIngle

If you find this tool useful, consider sponsoring its development