Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rocktimsaikia/github-dlr
Download individual files and folders from Github recursively.
https://github.com/rocktimsaikia/github-dlr
cli cmd command-line downloader github python terminal tool
Last synced: 5 days ago
JSON representation
Download individual files and folders from Github recursively.
- Host: GitHub
- URL: https://github.com/rocktimsaikia/github-dlr
- Owner: rocktimsaikia
- License: mit
- Created: 2024-08-31T16:21:44.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-09-05T16:09:38.000Z (5 months ago)
- Last Synced: 2025-01-08T19:51:04.351Z (13 days ago)
- Topics: cli, cmd, command-line, downloader, github, python, terminal, tool
- Language: Python
- Homepage:
- Size: 463 KB
- Stars: 41
- Watchers: 2
- Forks: 3
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Github-dlr
Download individual files and folders from GitHub recursively.
[![Tests](https://github.com/rocktimsaikia/github-dlr/actions/workflows/tests.yml/badge.svg)](https://github.com/rocktimsaikia/github-dlr/actions/workflows/tests.yml)
[![Demo](https://github.com/user-attachments/assets/49e4068c-1090-4c9e-9b56-59388ff407a9)](https://github.com/user-attachments/assets/8927d4ef-f8e1-4699-b75b-b7e28291d509)
## Motivation
The project aims to save time and resources by allowing users to download only the specific folders and files they need from a GitHub repository, without the hassle of cloning the entire repo. It's designed for efficiency, making development and learning more streamlined.
## Install
Requires Python version 3.8 or higher.
```sh
pip install github-dlr
```or using [pipx](https://pipx.pypa.io/)
```sh
pipx install github-dlr
```## Usage
> [!NOTE]
> Using the tool is straightforward, copy the GitHub URL of the target repository folder and paste it after the command `github-dlr` or it's alias `gh-dlr`.```sh
github-dlr# Basic Example
github-dlr https://github.com/makccr/wallpapers/blob/master/wallpapers/space
```> [!NOTE]
> By default it will download the entire folder from GitHub and place in the current directory from where the command is being executed. If you want to specify a different output directory, you can do it via the `--output` or `-o` flag.```sh
github-dlr --output wallpapers https://github.com/makccr/wallpapers/blob/master/wallpapers/space
```\
Find all available options using `--help````sh
usage: github-dlr [-h] [-o] [-v] github_pathDownload folders and files from Github.
positional arguments:
github_path Github directory full URL pathoptions:
-h, --help show this help message and exit
-o, --output Destination directory to download to
-v, --version show program version number and exitThanks for using github-dlr!
```## LICENSE
[MIT](./LICENSE) License © [Rocktim Saikia](https://rocktimsaikia.dev) 2024