Community Contribution / Good First Issue Template
An issue template for maintainers to create well-structured 'good first issue' tickets with context, acceptance criteria, mentorship availability, and skill level.
Detailed Explanation
Community Contribution Template
Good first issues are the gateway for new contributors. This template helps maintainers create well-structured contribution opportunities that reduce the barrier to entry and increase successful first contributions.
Template Structure
name: "Good First Issue"
description: "Create a contribution-friendly issue for newcomers"
title: "[Good First Issue]: "
labels: ["good first issue", "help wanted"]
body:
- type: markdown
attributes:
value: |
This template is for **maintainers** to create well-structured
issues that are suitable for first-time contributors.
- type: textarea
id: summary
attributes:
label: "Task Summary"
description: "Clear, concise description of what needs to be done"
validations:
required: true
- type: textarea
id: context
attributes:
label: "Context & Background"
description: "Why is this change needed? Link to relevant code/docs."
validations:
required: true
- type: textarea
id: acceptance_criteria
attributes:
label: "Acceptance Criteria"
description: "What 'done' looks like — be specific"
placeholder: |
- [ ] Updated the function in src/utils.ts
- [ ] Added unit tests
- [ ] Updated documentation
validations:
required: true
- type: dropdown
id: skill_level
attributes:
label: "Skill Level"
options:
- "Beginner (no prior project knowledge needed)"
- "Intermediate (some familiarity with codebase helpful)"
- "Advanced (domain expertise needed)"
validations:
required: true
- type: textarea
id: getting_started
attributes:
label: "Getting Started Hints"
description: "Point to specific files, functions, or docs to help get started"
placeholder: |
- Start by reading src/utils.ts, specifically the parseInput() function
- Run npm test -- --grep "parseInput" to see existing tests
- See CONTRIBUTING.md for setup instructions
validations:
required: true
- type: dropdown
id: mentorship
attributes:
label: "Mentorship"
options:
- "Available for pairing/mentoring"
- "Available for async Q&A"
- "Self-service (well-documented)"
validations:
required: true
What Makes a Good "Good First Issue"?
- Clear scope: The change is well-defined and bounded
- Specific pointers: Links to exact files and functions
- Test instructions: How to verify the change works
- Mentorship signal: Whether help is available
Reducing Contributor Drop-off
Studies show that first-time contributors are more likely to complete their contribution when the issue includes specific file paths, acceptance criteria, and an explicit offer of mentorship. This template ensures all three.
Skill Level Calibration
The skill level dropdown helps potential contributors self-select appropriate tasks. "Beginner" means no prior knowledge of the codebase is needed; "Advanced" means domain expertise (not just coding skill) is required.
Use Case
Open-source maintainers who want to grow their contributor community by creating well-structured, welcoming issues that reduce the barrier to first contributions.