Skip to main content

Download subfolders and files from GitHub repos

Project description

Github Repo Downloader (grd)

grd is a lightweight yet powerful Python CLI tool that allows you to download specific files or folders from large GitHub repositories—without cloning the entire repo.


Why Repo Downloader?

Have you ever followed a tutorial and needed just a small example from a GitHub repository—only to end up cloning the entire project?

Repo Downloader solves this problem by letting you:

  • Download a single file
  • Download a specific folder
  • Avoid unnecessary files and save time

Features

  • Download individual files from any GitHub repo
  • Download specific folders without cloning the full repository
  • Simple and intuitive CLI interface
  • Supports custom branches
  • Cross-platform (Windows, macOS, Linux)

Installation

🔧 Prerequisites

  • Python 3.10 or higher

  • pip installed

  • Alternatively you can use uv.

# if using uv
uv tool install grd-init
  • Tip: If you encounter permission issues, try:
pip install --user grd-init

Windows

pip3 install grd-init

MacOs

pip3 install grd-init

Windows

pip install grd-init

Usage

Available Commands

Command Description
folder Download a folder from a repository
single Download a single file
example Show example usage
version Display current version

Available Arguments

Argument Short Description
--name -n Folder name (required for folder command)
--link -l GitHub repository URL (required)
--path -p Destination path (default: current directory)
--branch -b Branch name (default: main)
--file -f File name (required for single command)

Verify Download

grd version
# or
grd --help

# Also install auto-completions (recommended)
grd --install-completion
grd --show-completion

Examples

Download a Folder

grd folder --name "repo_folder_name" --link "github_repo_url"

grd folder -n "repo_folder_name" -l "github_repo_url" --path "destination_path"

grd folder -n "repo_folder_name" -l "github_repo_url" -p "destination_path" --branch "branch_name"

Download a Single File

grd single --file "file_name" --link "github_repo_url"

grd single -f "file_name" -l "github_repo_url"

Example Command Help

grd example

License

This project is licensed under the MIT License. See LICENSE for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

grd_init-0.1.2.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

grd_init-0.1.2-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file grd_init-0.1.2.tar.gz.

File metadata

  • Download URL: grd_init-0.1.2.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for grd_init-0.1.2.tar.gz
Algorithm Hash digest
SHA256 0065c6a73c837b2ff9bc5b5587bd24b2ed54ff2c3b9b0371b5d7b5661813ef2e
MD5 9a7f815c3be5a7109bb72e2ba2df1370
BLAKE2b-256 2063294086a903d7e9de42f51c0211fbb172a5aed0f13a89743ee99349f52fbd

See more details on using hashes here.

File details

Details for the file grd_init-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: grd_init-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for grd_init-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4907f3e6786d6b723cd5a1b7c4a6439119aea04749f2825ad2cba35867e2fc45
MD5 50c11a7fdc77b89a417acf7d4936e3ca
BLAKE2b-256 297268e0d01741486eb112c5a1ba26014d51a61c16ea8f3681ccfe9aaa6e1db0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page