{"id":16615356,"url":"https://github.com/vladdoster/open-issues-finder","last_synced_at":"2025-10-29T19:30:28.121Z","repository":{"id":37830701,"uuid":"233146584","full_name":"vladdoster/open-issues-finder","owner":"vladdoster","description":"Find projects that align with your interests and have open issues! ","archived":false,"fork":false,"pushed_at":"2023-01-12T02:03:13.000Z","size":210,"stargazers_count":4,"open_issues_count":5,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-06T19:59:18.263Z","etag":null,"topics":["easy","first-project","good","linux","open-source","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vladdoster.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":"2020-01-10T23:21:55.000Z","updated_at":"2022-10-22T22:43:28.000Z","dependencies_parsed_at":"2023-02-09T09:32:06.548Z","dependency_job_id":null,"html_url":"https://github.com/vladdoster/open-issues-finder","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vladdoster%2Fopen-issues-finder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vladdoster%2Fopen-issues-finder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vladdoster%2Fopen-issues-finder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vladdoster%2Fopen-issues-finder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vladdoster","download_url":"https://codeload.github.com/vladdoster/open-issues-finder/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238874415,"owners_count":19545186,"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":["easy","first-project","good","linux","open-source","python"],"created_at":"2024-10-12T02:09:16.314Z","updated_at":"2025-10-29T19:30:22.803Z","avatar_url":"https://github.com/vladdoster.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Open Issue Finder\n\nFind open issues fitting your programming interests. Hopefully, it helps to find an exciting project that needs help!\n\n[![DeepSource](https://deepsource.io/gh/vladdoster/open-issues-finder.svg/?label=active+issues\u0026show_trend=true)](https://deepsource.io/gh/vladdoster/open-issues-finder/?ref=repository-badge)\n\n## Screenshots\n\n\u003cimg src=\".repo-assets/stdout_scrot.png\"\n     data-canonical-src=\".repo-assets/stdout_scrot.png\"\n     width=\"700\"\n     height=\"300\" /\u003e\n     \n\u003cimg src=\".repo-assets/email_scrot.png\"\n     data-canonical-src=\".repo-assets/email_scrot.png\"\n     width=\"700\"\n     height=\"300\" /\u003e\n     \n## Usage\n\n1. Fill out the [config.ini](config.ini) with your interests. The interests and labels have some prepopulated to show you what it expects.\n2. Requires only \u003e=Python 3.x.x and no external dependencies!\n\n```bash\npython3 open-issue-finder\n```\n\n3. If no email credentials are supplied, projects are logged to stdout, and a .txt file is written with the name of `open-issue-projects.txt`.\n   If email credentials are supplied, look in your email for a list of potential projects looking for contributors!\n\n## Run on a schedule\n\n1. Make the script executable:\n\n```bash\nchmod +x open-issues-finder\n```\n\n2. Copy to the desired host location:\n   **Note**: `open-issues-finder` and `config.ini` should be in the same directory.\n   **Sys-Admins would place it in `/usr/bin`, but I prefer `$HOME/.local/bin/`. It comes down to preference.\n\n```bash\ncp open-issues-finder config.ini $HOME/.local\n```\n\n### Cron job\n\n----\n\nThe following is how I have it running on my VPS. It runs every day at 9 am.\n\n```bash\n0 9 * * * /usr/bin/python3.8 /home/vlad/.local/bin/open-issues-finder \u003e/dev/null 2\u003e\u00261\n```\n\n1. [Get up to speed on what cron is](https://wiki.archlinux.org/index.php/Cron)\n2. [crontab guru - online crontab editor](https://crontab.guru/)\n\n### Systemd service\n\n----\n\n1. Create the `.service` file in `/etc/systemd/system`. I'd name it something like `potential-contributor.service`\n\n```bash\ntouch /etc/systemd/system/open-issues-finder.{service,timer}\n```\n\n2. Edit the `.service` file\n\n```bash\nvim -O open-issues-finder.service potential-contributor.timer\n```\n\n3. The contents would look like this.\n\n##### /etc/systemd/system/potential-contributor.service\n\n```bash\n[Unit]\nDescription=Find projects with open issues and align with your programming interests.\n\n[Service]\nType=oneshot\nExecStart=/usr/bin/open-issues-finder\n\n[Install]\nWantedBy=multi-user.target\n```\n\n##### /etc/systemd/system/open-issues-finder.timer\n\n```bash\n[Unit]\nDescription=Run open-issues-finder every 24 hours\nRequires=potential-contributor.service\n\n[Timer]\nUnit=potential-contributor.service\nOnUnitInactiveSec=24h\nAccuracySec=1s\n\n[Install]\nWantedBy=timers.target\n```\n\nIf your system is not playing nicely with `ExecStart` + `absolute path` or want it located elsewhere, then pass `ExecStart` a direct sh command.\n\n```bash\nExecStart=/bin/sh -c \"python3 /usr/bin/open-issues-finder\"\n```\n\n4. Exit vim. I'll wait\n\n5. Enable \u0026 start newly created service\n\n```bash\nsystemctl enable --now open-issues-finder.service open-issues-finder.timer\n```\n\n----\n\n### TODO\n\n- [ ] : Clean up edge cases around GitHub throttling\n- [ ] : Allow for the file to keep growing so you can have a list of possible projects.\n- [ ] : Add CLI options such as `--help` and `--verbose`\n\n----\n\n\n## Author\n\nIt was created by [Vlad Doster](http://vdoster.com).\n\nThis project is [hosted on GitHub](https://github.com/vladdoster/open-issues-finder). Please feel free to submit pull requests.\n\n## License\n\nCopyright © 2019–2020 Vlad Doster. Released under the GPLv3 license, you can find it in the file [LICENSE](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvladdoster%2Fopen-issues-finder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvladdoster%2Fopen-issues-finder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvladdoster%2Fopen-issues-finder/lists"}