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

Linux

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.3.tar.gz (5.6 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.3-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for grd_init-0.1.3.tar.gz
Algorithm Hash digest
SHA256 7621c1c536c0701b85ba6aa22be8f925bff7feafb9273c5e35ad9a885323cdaa
MD5 104854817b1b99343141b8f7b1764027
BLAKE2b-256 090691da2e14cb1a7c89f43fedf5ac5f0a8aae80610f1e3eb169ffe29edf306d

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for grd_init-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 7845a805b79e50c350672ef267e660dfde64e8da510d10bd6ef883b71bbeec29
MD5 c5f693a85bd00e5a430284f0411d5f1b
BLAKE2b-256 7d6033a1f7919c981dc0eb99ad8c48e006e0c32f295d11d05aa10aa5576244b5

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