Skip to content

Commit 2cde82a

Browse files
committed
feat: add standardized GitHub issue templates
1 parent 1d943a1 commit 2cde82a

7 files changed

Lines changed: 397 additions & 0 deletions

File tree

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
name: "Report a Bug"
2+
description: "Report a bug for the team to review"
3+
title: "[Bug] "
4+
labels: ["bug"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
## Bug Report
10+
This bug report will be reviewed by the team. To have Claude AI fix it automatically,
11+
use the **"Report a Bug (Claude AI)"** template instead, or add the `claude` label
12+
after creating this issue.
13+
- type: textarea
14+
id: description
15+
attributes:
16+
label: "What's broken?"
17+
description: "Describe the bug in plain language."
18+
placeholder: "When I use the library, it throws an error..."
19+
validations:
20+
required: true
21+
- type: textarea
22+
id: steps
23+
attributes:
24+
label: "Steps to reproduce"
25+
description: "How can we reproduce this bug?"
26+
placeholder: |
27+
1. Install the package
28+
2. Call the function with these arguments
29+
3. See the error
30+
validations:
31+
required: true
32+
- type: textarea
33+
id: expected
34+
attributes:
35+
label: "What should happen vs what actually happens"
36+
description: "Describe the expected behavior and the actual behavior."
37+
validations:
38+
required: true
39+
- type: dropdown
40+
id: priority
41+
attributes:
42+
label: "Priority"
43+
description: "How important is this?"
44+
options:
45+
- "Low — cosmetic issue"
46+
- "Medium — broken but has workaround"
47+
- "High — broken, no workaround"
48+
- "Critical — site is down or data loss"
49+
default: 1
50+
validations:
51+
required: true
52+
- type: dropdown
53+
id: area
54+
attributes:
55+
label: "What part of the app?"
56+
description: "Which area does this affect?"
57+
multiple: true
58+
options:
59+
- "Core / Source Code"
60+
- "API / Public Interface"
61+
- "Types / TypeScript"
62+
- "Build / Configuration"
63+
- "Testing / CI"
64+
- "Documentation"
65+
- "Other"
66+
validations:
67+
required: true
68+
- type: input
69+
id: browser
70+
attributes:
71+
label: "Browser / Device (optional)"
72+
description: "What browser and device are you using?"
73+
placeholder: "e.g., Chrome on Windows, Safari on iPhone"
74+
validations:
75+
required: false
76+
- type: textarea
77+
id: screenshots
78+
attributes:
79+
label: "Screenshots (optional)"
80+
description: "Paste screenshots or drag files here."
81+
validations:
82+
required: false
83+
- type: checkboxes
84+
id: checklist
85+
attributes:
86+
label: "Before submitting"
87+
options:
88+
- label: "I searched existing issues and this hasn't been reported before"
89+
required: true
Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
name: "Report a Bug (Claude AI)"
2+
description: "Report a bug — Claude AI will fix it automatically"
3+
title: "[Bug] "
4+
labels: ["claude", "bug"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
## Bug Report
10+
Describe the bug. Claude AI will analyze this and create a fix automatically.
11+
- type: textarea
12+
id: description
13+
attributes:
14+
label: "What's broken?"
15+
description: "Describe the bug in plain language."
16+
placeholder: "When I use the library, it throws an error..."
17+
validations:
18+
required: true
19+
- type: textarea
20+
id: steps
21+
attributes:
22+
label: "Steps to reproduce"
23+
description: "How can we reproduce this bug?"
24+
placeholder: |
25+
1. Install the package
26+
2. Call the function with these arguments
27+
3. See the error
28+
validations:
29+
required: true
30+
- type: textarea
31+
id: expected
32+
attributes:
33+
label: "What should happen vs what actually happens"
34+
description: "Describe the expected behavior and the actual behavior."
35+
placeholder: |
36+
Expected: The function should return the correct value
37+
Actual: It throws an error or returns undefined
38+
validations:
39+
required: true
40+
- type: dropdown
41+
id: priority
42+
attributes:
43+
label: "Priority"
44+
description: "How important is this?"
45+
options:
46+
- "Low — cosmetic issue"
47+
- "Medium — broken but has workaround"
48+
- "High — broken, no workaround"
49+
- "Critical — site is down or data loss"
50+
default: 1
51+
validations:
52+
required: true
53+
- type: dropdown
54+
id: area
55+
attributes:
56+
label: "What part of the app?"
57+
description: "Which area does this affect?"
58+
multiple: true
59+
options:
60+
- "Core / Source Code"
61+
- "API / Public Interface"
62+
- "Types / TypeScript"
63+
- "Build / Configuration"
64+
- "Testing / CI"
65+
- "Documentation"
66+
- "Other"
67+
validations:
68+
required: true
69+
- type: input
70+
id: browser
71+
attributes:
72+
label: "Browser / Device (optional)"
73+
description: "What browser and device are you using?"
74+
placeholder: "e.g., Chrome on Windows, Safari on iPhone"
75+
validations:
76+
required: false
77+
- type: textarea
78+
id: screenshots
79+
attributes:
80+
label: "Screenshots (optional)"
81+
description: "Paste screenshots or drag files here."
82+
validations:
83+
required: false
84+
- type: checkboxes
85+
id: checklist
86+
attributes:
87+
label: "Before submitting"
88+
options:
89+
- label: "I searched existing issues and this hasn't been reported before"
90+
required: true
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
name: "Request a Feature (Claude AI)"
2+
description: "Describe a new feature — Claude AI will implement it automatically"
3+
title: "[Feature] "
4+
labels: ["claude", "enhancement"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
## New Feature Request
10+
Describe what you want built. Claude AI will analyze this and create a pull request automatically.
11+
- type: textarea
12+
id: description
13+
attributes:
14+
label: "What do you want?"
15+
description: "Describe the feature in plain language. Be as specific as possible."
16+
placeholder: "I want a new option that allows..."
17+
validations:
18+
required: true
19+
- type: textarea
20+
id: acceptance-criteria
21+
attributes:
22+
label: "How will we know it's done?"
23+
description: "List the requirements that must be met."
24+
placeholder: |
25+
- The function should handle edge cases
26+
- All existing tests still pass
27+
- TypeScript types are correct
28+
validations:
29+
required: true
30+
- type: dropdown
31+
id: priority
32+
attributes:
33+
label: "Priority"
34+
description: "How important is this?"
35+
options:
36+
- "Low — nice to have"
37+
- "Medium — should be done soon"
38+
- "High — needed this week"
39+
- "Critical — blocking other work"
40+
default: 1
41+
validations:
42+
required: true
43+
- type: dropdown
44+
id: area
45+
attributes:
46+
label: "What part of the app?"
47+
description: "Which area does this affect?"
48+
multiple: true
49+
options:
50+
- "Core / Source Code"
51+
- "API / Public Interface"
52+
- "Types / TypeScript"
53+
- "Build / Configuration"
54+
- "Testing / CI"
55+
- "Documentation"
56+
- "Other"
57+
validations:
58+
required: true
59+
- type: textarea
60+
id: context
61+
attributes:
62+
label: "Additional context (optional)"
63+
description: "Screenshots, links, design mockups, or any other helpful info."
64+
validations:
65+
required: false
66+
- type: checkboxes
67+
id: checklist
68+
attributes:
69+
label: "Before submitting"
70+
options:
71+
- label: "I searched existing issues and this hasn't been requested before"
72+
required: true
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
name: "Quick Request (Claude AI)"
2+
description: "The fastest way to ask Claude AI to make a change"
3+
title: "[Request] "
4+
labels: ["claude"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
Just tell Claude what you need — no jargon required! Claude AI will read your request and create the changes automatically.
10+
- type: textarea
11+
id: request
12+
attributes:
13+
label: "What do you need?"
14+
description: "Describe what you want in your own words. Be as specific as you can."
15+
placeholder: |
16+
Examples:
17+
- "Fix the TypeScript error in index.ts"
18+
- "Add a missing export to the public API"
19+
- "Update the README with usage examples"
20+
- "Rename the config option from X to Y"
21+
validations:
22+
required: true
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
name: "Request a Task (Claude AI)"
2+
description: "Request a refactor, chore, or improvement — Claude AI will handle it"
3+
title: "[Task] "
4+
labels: ["claude"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
## Task Request
10+
Describe the task. Claude AI will analyze this and create a pull request automatically.
11+
- type: textarea
12+
id: description
13+
attributes:
14+
label: "What needs to be done?"
15+
description: "Describe the task in plain language."
16+
placeholder: |
17+
Examples:
18+
- "Clean up the source code — it has unused imports"
19+
- "Move the shared helpers into a utils folder"
20+
- "Update all the old-style imports to use the new format"
21+
validations:
22+
required: true
23+
- type: textarea
24+
id: acceptance-criteria
25+
attributes:
26+
label: "Acceptance criteria"
27+
description: "How will we know it's done?"
28+
placeholder: |
29+
- All tests still pass
30+
- No new TypeScript errors
31+
- Performance is not degraded
32+
validations:
33+
required: true
34+
- type: dropdown
35+
id: priority
36+
attributes:
37+
label: "Priority"
38+
description: "How important is this?"
39+
options:
40+
- "Low — nice to have"
41+
- "Medium — should be done soon"
42+
- "High — needed this week"
43+
- "Critical — blocking other work"
44+
default: 1
45+
validations:
46+
required: true
47+
- type: dropdown
48+
id: type
49+
attributes:
50+
label: "Type"
51+
description: "What kind of task is this?"
52+
options:
53+
- "Refactor"
54+
- "Performance"
55+
- "Cleanup"
56+
- "Configuration"
57+
- "Other"
58+
validations:
59+
required: true
60+
- type: textarea
61+
id: context
62+
attributes:
63+
label: "Additional context (optional)"
64+
description: "Any extra information that might help."
65+
validations:
66+
required: false
67+
- type: checkboxes
68+
id: checklist
69+
attributes:
70+
label: "Before submitting"
71+
options:
72+
- label: "I searched existing issues and this hasn't been requested before"
73+
required: true

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: "Not sure which template to use?"
4+
url: https://github.com/idimetrix/elevanceit.github.io/issues/new?template=claude-quick.yml
5+
about: "Use the Quick Request template — just describe what you need in plain English."

0 commit comments

Comments
 (0)