{"id":15041613,"url":"https://github.com/fazouane-marouane/github-release-downloader","last_synced_at":"2025-04-14T20:23:02.538Z","repository":{"id":47414716,"uuid":"94932080","full_name":"fazouane-marouane/github-release-downloader","owner":"fazouane-marouane","description":"CLI tool to download all release assets from a git repository","archived":false,"fork":false,"pushed_at":"2023-01-04T01:18:14.000Z","size":236,"stargazers_count":30,"open_issues_count":8,"forks_count":6,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-28T08:41:25.686Z","etag":null,"topics":["cli","download","downloader","github-releases","mirroring","node-sass"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/github-release-downloader","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fazouane-marouane.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-06-20T20:25:54.000Z","updated_at":"2024-06-05T00:36:48.000Z","dependencies_parsed_at":"2023-02-01T17:15:19.594Z","dependency_job_id":null,"html_url":"https://github.com/fazouane-marouane/github-release-downloader","commit_stats":null,"previous_names":["practicaljs/github-release-downloader"],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fazouane-marouane%2Fgithub-release-downloader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fazouane-marouane%2Fgithub-release-downloader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fazouane-marouane%2Fgithub-release-downloader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fazouane-marouane%2Fgithub-release-downloader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fazouane-marouane","download_url":"https://codeload.github.com/fazouane-marouane/github-release-downloader/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248952940,"owners_count":21188526,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","download","downloader","github-releases","mirroring","node-sass"],"created_at":"2024-09-24T20:46:17.164Z","updated_at":"2025-04-14T20:23:02.522Z","avatar_url":"https://github.com/fazouane-marouane.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# github-release-downloader\n\n[![npm version](https://badge.fury.io/js/github-release-downloader.svg)](https://badge.fury.io/js/github-release-downloader)\n[![Build status](https://ci.appveyor.com/api/projects/status/4fdxoq06aq002end/branch/master?svg=true)](https://ci.appveyor.com/project/practicaljs/github-release-downloader/branch/master)\n[![CircleCI](https://circleci.com/gh/practicaljs/github-release-downloader/tree/master.svg?style=svg)](https://circleci.com/gh/practicaljs/github-release-downloader/tree/master)\n[![license](https://img.shields.io/github/license/practicaljs/github-release-downloader.svg)](https://github.com/practicaljs/github-release-downloader/blob/master/LICENSE)\n\n# Installation\n\nInstalling the cli tool is as easy as this:\n\n```bash\nnpm install -g github-release-downloader\n```\n\n# Simple usage\n\nFor example, to download all node-sass's binaries:\n\n```bash\ngrd --token \u003cyour github api token\u003e --owner sass --repository node-sass\n```\n\nTo download all node-sass's binaries for versions above v4.0.0 you would do\n\n```bash\ngrd --token \u003cyour github api token\u003e --owner sass --repository node-sass --min-version v4.0.0\n```\n\n\u003e **PS**: to get a personal api token you'll need to [generate one](https://github.com/blog/1509-personal-api-tokens). No special right is required.\n\n# Advanced usages\n\n## 1. Custom download path\n\nBy default the download path is the path from where you ran `node`. But it's easy to override this with the the option `--output` (or `-o` if you feel that life is too short).\n\n```bash\ngrd --token \u003cyour github api token\u003e --owner sass --repository node-sass --output local-cache\n```\n\n## 2. Parallel download\n\nBy default downloads are launched in parrallel; 3 downloads at a time.\nYou can ofcourse specify a more appropriate number if you like:\n\n```bash\ngrd --token \u003cyour github api token\u003e --owner sass --repository node-sass --parallel 10\n```\n\n## 3. Filter assets\n\nBy default you get all assets available. No filter is applied. Let's imagine that you're only interested in linux \u0026 windows binaries. You would use --filter-asset.\n\n```bash\ngrd --token \u003cyour github api token\u003e --owner sass --repository node-sass --filter-asset '^(win32-ia32|win32-x64|linux-ia32|linux-x64)'\n```\n\n## 4. Filter versions\n\nYou have two possibilities here:\n\n`--min-version` and you'd download all versions starting from the argument (this respects semver).\n\n```bash\ngrd --token \u003cyour github api token\u003e --owner sass --repository node-sass --min-version \"v4.0.0\"\n```\n\nor you can use `--match-version` and pass a regexp. Here are some examples\n\n```bash\n# Download only the version v4.0.0\ngrd --token \u003cyour github api token\u003e --owner sass --repository node-sass --match-version \"^v4\\.0\\.0$\"\n\n# Download only all versions v4.0.x v4.1.x v4.2.x\ngrd --token \u003cyour github api token\u003e --owner sass --repository node-sass --match-version \"^v4\\.(0|1|2)\\.\"\n\n# Download all win23-x64 assets of all alpha versions since v1\ngrd --token \u003cyour github api token\u003e --owner sass --repository node-sass --min-version \"v1.0.0-alpha\" --match-version \"alpha\" --filter-asset \"^win32-x64\"\n```\n\n## 5. Using a HTTP/HTTPS proxy\n\nIf you're behind a http/https proxy, you can also use it with `grd` with those parameters:\n\n```bash\n# Use the defaut proxy ($http_proxy or $https_proxy)\ngrd --token \u003cyour github api token\u003e --owner sass --repository node-sass --proxy\n\n# Use an explicit proxy\ngrd --token \u003cyour github api token\u003e --owner sass --repository node-sass --proxy \"https://username:password@proxy:port/\"\n```\n\nOther types of proxies are not supported.\n\n## 6. Ignore missing assets\n\nSometimes, GitHub releases may reference assets that are no longer available. Maybe the asset has since been deleted, but GitHub's api still references it. By default, since v1.2.0, if we the asset that we try to download is missing a warning is logged and we carry on with the other tasks. You can override this behavior if you'd prefer to raise a fatal error and stop the process by passing `--no-ignore-missing-assets`.\n\n```bash\n#\ngrd --token \u003cyour github api token\u003e --owner sass --repository node-sass --match-version \"^v4.6.1\" --filter-asset \"win32-ia32-45_binding.pdb\" --no-ignore-missing-assets\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffazouane-marouane%2Fgithub-release-downloader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffazouane-marouane%2Fgithub-release-downloader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffazouane-marouane%2Fgithub-release-downloader/lists"}