Feature Request Issue Template
A GitHub issue template for feature requests with problem statement, proposed solution, alternatives considered, and priority selection. Works with both YAML forms and Markdown.
Detailed Explanation
Feature Request Issue Template
A well-structured feature request template helps teams evaluate and prioritize new ideas consistently. It separates the problem from the solution, encouraging thoughtful proposals.
YAML Form Structure
name: "Feature Request"
description: "Suggest an idea for this project"
title: "[Feature]: "
labels: ["enhancement"]
body:
- type: markdown
attributes:
value: |
Thank you for suggesting an improvement!
- type: textarea
id: problem
attributes:
label: "Problem Statement"
description: "Is your feature request related to a problem?"
placeholder: "I'm always frustrated when..."
validations:
required: true
- type: textarea
id: solution
attributes:
label: "Proposed Solution"
description: "Describe the solution you'd like"
validations:
required: true
- type: textarea
id: alternatives
attributes:
label: "Alternatives Considered"
description: "Other solutions or features you've considered"
validations:
required: false
- type: dropdown
id: priority
attributes:
label: "Priority"
options:
- "Nice to have"
- "Important"
- "Critical for my workflow"
validations:
required: false
Design Philosophy
Problem-first approach: By asking for the problem statement before the solution, you encourage reporters to articulate the underlying need. This often leads to discovering better solutions during triage.
Alternatives section: Asking about alternatives considered shows the reporter has thought through the request and helps maintainers understand the solution space.
Priority self-assessment: Letting reporters indicate how critical the feature is helps prioritize the backlog, though maintainers should validate this against broader usage data.
Classic Markdown Alternative
For GitLab or teams that prefer editable Markdown, the same structure works with headers and HTML comments as guidance:
---
name: "Feature Request"
about: "Suggest an idea for this project"
labels: "enhancement"
---
## Problem Statement
<!-- Describe the problem this feature would solve -->
## Proposed Solution
<!-- Describe what you'd like to happen -->
Use Case
Product teams and open-source maintainers who want to collect structured feature requests that separate problems from solutions, enabling better prioritization and discussion.