Skip to main content

OSS Contribution Finder

CI py release License Stars

Find open-source contribution opportunities via the GitHub API.

Searches for issues labeled "good first issue" (or any label you choose), filtered by language, topic, star count, and activity. Outputs a ranked list ready for contribution.

Contributor Friendliness

The tool detects signals of contributor-friendly repositories (CONTRIBUTING.md, PR/issue templates, CODE_OF_CONDUCT.md) and assigns a friendliness score (0-100). Use --sort friendliness to rank by this score. The score is shown in table and markdown output, and the breakdown is included in JSON.

Install & Quick Start

# Install from git (not yet on PyPI)
pip install git+https://github.com/yunaremaia/oss-contribution-finder.git

# Find Python good-first-issues
oss-contribution-finder --language python --limit 10

Usage

# Find Python good-first-issues
oss-contribution-finder --language python --limit 10

# Find Rust CLI projects with 100+ stars
oss-contribution-finder --language rust --topic cli --min-stars 100

# Export as markdown
oss-contribution-finder --language go --format markdown >> opportunities.md

# JSON output for automation
oss-contribution-finder --language typescript --format json --limit 50

# Only show issues from repositories with a root CONTRIBUTING.md
oss-contribution-finder --language python --require-contributing

# Check rate limit status
oss-contribution-finder --check-rate-limit

Options

Flag Description Default
--version, -v Show program version and exit -
--label Labels to filter (repeatable) good first issue
--language, -l Programming language -
--topic, -t GitHub topic -
--min-stars Minimum star count -
--created-after Issues created after (YYYY-MM-DD) -
--updated-after Issues updated after (YYYY-MM-DD) 30 days ago
--sort Sort field (comments, reactions, updated) updated
--limit, -n Max results 20
--page Results page number 1
--per-page Items per page (1-100) min(limit, 100)
--format, -f Output (table, markdown, json) table
--no-enrich Skip repo metadata (faster) false
--require-contributing Only include repos with a root CONTRIBUTING.md false
--check-rate-limit Show rate limit and exit —
--retry Max retry attempts on rate limits or network errors 3
--no-cache Disable in-memory API caching (default TTL: 1 hour) false
--timeout Request timeout in seconds 30

Caching

API responses are cached in memory with a default TTL of 1 hour (3600 seconds) to avoid redundant requests during repeated operations. Use --no-cache to bypass cached responses and fetch fresh data directly from GitHub.

Authentication and Proxy

Set GH_TOKEN or GITHUB_TOKEN in your environment to avoid rate limits:

export GH_TOKEN=ghp_your_token_here

Standard proxy environment variables (HTTP_PROXY, HTTPS_PROXY, NO_PROXY) are automatically respected for all outgoing requests via urllib.request.ProxyHandler. You can also configure request timeouts via the --timeout option (defaults to 30 seconds):

# Custom timeout for slow networks
oss-contribution-finder --language python --timeout 60

Without a token, searches are limited to 10 requests per minute.

Results include a contributor_friendly boolean in JSON (and a Friendly column in the table / line in Markdown). It is true when a repository has a root CONTRIBUTING.md, a .github/PULL_REQUEST_TEMPLATE.md file, a .github/PULL_REQUEST_TEMPLATE/ directory, or a .github/ISSUE_TEMPLATE/ directory. Detection uses up to two additional GitHub API requests per unique repository, even with --no-enrich or no token. --require-contributing filters on the root file specifically, not on the broader friendly signal. API errors emit a warning; results may then be incomplete, and the filter excludes repositories whose root file it cannot verify.

Examples

# Find documentation contributions
oss-contribution-finder --label "good first issue" --label "documentation" --limit 15

# Find recently updated Python issues in AI/ML
oss-contribution-finder --language python --topic machine-learning --updated-after 2026-08-01

# Generate a weekly digest
oss-contribution-finder --language rust --format markdown --limit 25 > weekly-opportunities.md

Sponsoring

oss-contribution-finder is MIT licensed and free to use. If it saved you time, you can support continued maintenance via GitHub Sponsors or by sending SOL to the project treasury wallet:

Eeztv1nCYUt1fwGWpzKC948gaWfjejYCAuLtUMgzDWbW

Funding platforms are configured in .github/FUNDING.yml.

If this tool is useful to you, a star helps other people find it.

  • gfi — find well-scoped good first issues to start on
  • aipr — pre-screen repos for AI contribution policy
  • ghstats — generate a GitHub stats dashboard
  • agent-guard — enforce guardrails on AI agent tool calls

Part of a family of focused, single-purpose developer tools — each one does one thing and does it well.

License

MIT

Metadata

Release files for oss-contribution-finder 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for oss-contribution-finder 0.2.0
File Size Uploaded Provenance
oss_contribution_finder-0.2.0.tar.gz 19.1 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for oss-contribution-finder 0.2.0
File Interpreter ABI Platform
oss_contribution_finder-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 30.5 kB

Release files / oss_contribution_finder-0.2.0.tar.gz

Download URL oss_contribution_finder-0.2.0.tar.gz
Size 19.1 kB
Tags Source
SHA-256 checksum
How to use checksums
f159c9ff0b40d5258848c3328a7f1899f0aa373e4783a7d7e3641d6869469b73
BLAKE2b-256 checksum
How to use checksums
3b52190ef7bc6ed2ba7751f58b2ffae3c8c1043ee9e472a5e03342183bedb20d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

Release files / oss_contribution_finder-0.2.0-py3-none-any.whl

Download URL oss_contribution_finder-0.2.0-py3-none-any.whl
Size 11.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0f72ca9f57817cb64358f59588172ed520e3325e5207b0dd0d979cf1abeff07b
BLAKE2b-256 checksum
How to use checksums
5b6631285573557a82f8eeefc3fd6ca844d14ab5452b9ef00fb2ce48cb1c4a8c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

Security for oss-contribution-finder 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for oss_contribution_finder-0.2.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 19, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page