Back
🤝
Open Source Contribution Checklist
Medium
17 items
·
1 hour
testuser
Published 2 weeks ago
This checklist guides first-time contributors through finding good-first-issues, preparing a local fork, making small focused changes, running tests, and creating a clear pull request. It’s for developers or non-developers who want a reliable step-by-step workflow for safe, respectful open source contributions.
Progress
0 / 17
- Identify projects that match your interests and skills — Search by language, topic, or organization to find work you care about.
- Filter issues labeled 'good first issue' or 'help wanted' — Use repo labels and GitHub search filters for beginner-friendly tasks.
- Read the README and CONTRIBUTING.md thoroughly — Follow repo-specific contribution steps, coding standards, and requirements.
- Check the repository license and code of conduct — Confirm you can contribute and that you’ll follow the project's behavior rules.
- Comment on the issue or open a discussion to propose your approach — Announce your plan to avoid duplicate work and get early feedback.
- Fork the repository to your GitHub account
- Clone your fork locally and add the upstream remote — git clone <your-fork> && git remote add upstream <original-repo>
- Create a new branch with a clear, descriptive name — Include the issue number and short purpose, e.g., issue-123-fix-typo.
- Make a small, focused change that addresses the issue — Keep each PR atomic and limited to one concern for easier review.
- Run and update tests and linters locally — Fix failing tests and style issues before committing and pushing.
- Run the project's test suite locally — Use the repo's test command (e.g., npm test, pytest, mvn test).
- Run linters/formatters and fix style issues — Follow repo rules (prettier, eslint, black) and autofix where possible.
- Write clear, conventional commit messages — Use a format like type(scope): short summary — e.g., fix(parser): handle null.
- Push your branch to your fork — git push origin <branch-name>
- Open a pull request with a clear title and detailed description — Explain what, why, and how; reference the issue number and any tests run.
- Respond to review feedback and update the PR promptly — Address requested changes, add tests if asked, and explain choices in replies.
- Delete the branch after merge and note your learnings — Clean up local/remote branches and record tips for next contribution.
Your Stats
🏆
0
Completed
📅
—
Last Done
⏱️
—
Last Time
Completion Rate
Items checked per run
⚡
—
Fastest Run
🔥
0
Streak
🚫
—
Most Skipped Step
🔄
0
Resets
📝 My Notes