{"id":18320596,"url":"https://github.com/lukasbach/github-bulk-unsubscriber","last_synced_at":"2025-04-05T22:31:57.732Z","repository":{"id":57159066,"uuid":"398384553","full_name":"lukasbach/github-bulk-unsubscriber","owner":"lukasbach","description":"Unwatch large quantities of Github repositories in an instance. Specify the repos to unwatch with a Regex.","archived":false,"fork":false,"pushed_at":"2021-08-20T22:36:28.000Z","size":3051,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-21T13:12:52.400Z","etag":null,"topics":["bulk","cli","github","helper","many","repository","tool","unsubscribe","unwatch","watch","watched"],"latest_commit_sha":null,"homepage":"","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/lukasbach.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-08-20T19:45:51.000Z","updated_at":"2024-07-24T15:19:48.000Z","dependencies_parsed_at":"2022-09-07T20:12:03.506Z","dependency_job_id":null,"html_url":"https://github.com/lukasbach/github-bulk-unsubscriber","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":"lukasbach/cli-ts-commander-starter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lukasbach%2Fgithub-bulk-unsubscriber","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lukasbach%2Fgithub-bulk-unsubscriber/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lukasbach%2Fgithub-bulk-unsubscriber/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lukasbach%2Fgithub-bulk-unsubscriber/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lukasbach","download_url":"https://codeload.github.com/lukasbach/github-bulk-unsubscriber/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247411237,"owners_count":20934650,"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":["bulk","cli","github","helper","many","repository","tool","unsubscribe","unwatch","watch","watched"],"created_at":"2024-11-05T18:16:49.299Z","updated_at":"2025-04-05T22:31:57.153Z","avatar_url":"https://github.com/lukasbach.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# github-bulk-unsubscriber\n\n![Pretty](https://github.com/lukasbach/github-bulk-unsubscriber/workflows/Pretty/badge.svg)\n![Publish](https://github.com/lukasbach/github-bulk-unsubscriber/workflows/Publish/badge.svg)\n\n\u003e Unsubscribe from large quantities of Github repositories in an instance. Specify the repos to unwatch with a Regex.\n\nWhen you join an organization in Github, you automatically start watching all repositories that you gain\naccess to (unless previously disabled in your settings). For large organizations, this can make you watch\nhundreds or thousands of repositories, making your Github notification overview pretty much useless, when\nyou start receiving notifications every couple of seconds for repositories you don't actually work on.\n\nThis tool allows you to unwatch large numbers of repositories by specifying a regex that matches the repositories\nto unwatch. The tool will allow you to finetune your selection afterwards, and carefully ask you to review\nyour selection before the selected repositories are unsubscribed from.\n\nYou will need a Github Access token to use the tool. You can generate the token at https://github.com/settings/tokens/new.\nThe token needs the `notification` and `repo` permission. Make sure the token has access to the organizations, whose\nrepos you want to unwatch, which might require you to enable SSO for that organization.\n\n![alt text](https://raw.githubusercontent.com/lukasbach/github-bulk-unsubscriber/main/demo.gif 'Demo Image')\n\n## How to use\n\nRun\n\n    npx github-bulk-unsubscriber\n\nin your terminal to start the interactive unsubscription process. You need NodeJS installed.\n\nYou can also [download a prebuilt binary](https://github.com/lukasbach/cli-ts-commander-starter/releases) and run that.\n\n## How to develop\n\n- `yarn` to install dependencies\n- `yarn start` to run the CLI script for debugging\n- `yarn test` to run tests\n- `yarn prettier:check` to verify that your code is pretty\n- `yarn prettier:write` to make your code pretty\n\nDon't manually publish the package to NPM! You can just tag\na commit with a new release tag (remember to bump the version\nin `package.json`) and push the changes, a Github Action\nwill deploy the new version to NPM.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flukasbach%2Fgithub-bulk-unsubscriber","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flukasbach%2Fgithub-bulk-unsubscriber","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flukasbach%2Fgithub-bulk-unsubscriber/lists"}