Skip to content

Commit f2a6b26

Browse files
Kikobeatsclaude
andcommitted
chore: add issue templates and stale-issue bot
Port the useful maintenance tooling from iamcal#835 (closed): structured issue forms (bug / feature / new provider) plus a daily stale-issue workflow. Bug-report affected-area options updated to match current repo layout (providers registry, scripts/audit.js). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 6708aa9 commit f2a6b26

5 files changed

Lines changed: 203 additions & 0 deletions

File tree

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
name: Bug Report
2+
description: Bug report to help us improve the project
3+
title: "[Bug]: "
4+
labels: ["Bug"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
Thanks for taking the time to fill out this bug report! Please provide as much detail as possible.
10+
11+
- type: textarea
12+
id: what-happened
13+
attributes:
14+
label: What happened?
15+
description: "Provide a clear and concise description of what the bug is. Include screenshots if possible."
16+
placeholder: "A clear and concise description of what the bug is."
17+
validations:
18+
required: true
19+
20+
- type: textarea
21+
id: reproduction-steps
22+
attributes:
23+
label: Steps to Reproduce
24+
description: "Please provide the steps to reproduce the behavior."
25+
placeholder: |
26+
1. Go to '...'
27+
2. Click on '....'
28+
3. Scroll down to '....'
29+
4. See error
30+
validations:
31+
required: true
32+
33+
- type: textarea
34+
id: expected-behavior
35+
attributes:
36+
label: Expected Behavior
37+
description: "A clear and concise description of what you expected to happen."
38+
validations:
39+
required: true
40+
41+
- type: dropdown
42+
id: affected-area
43+
attributes:
44+
label: Affected Area
45+
description: "Which part of the project is affected by this bug?"
46+
options:
47+
- Website (oembed.com)
48+
- Provider Registry (providers/*.yml)
49+
- Audit Script (scripts/audit.js)
50+
- GitHub Actions Workflow
51+
- Other
52+
validations:
53+
required: true
54+
55+
- type: textarea
56+
id: additional-context
57+
attributes:
58+
label: Additional Context
59+
description: "Add any other context about the problem here (e.g., browser, OS, logs)."

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: "oEmbed Spec Question"
4+
url: "https://github.com/iamcal/oembed/discussions"
5+
about: "Please ask and answer questions about the oEmbed spec here."
6+
- name: "oEmbed Website"
7+
url: "https://oembed.com"
8+
about: "The oEmbed official website."
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
name: Feature Request
2+
description: Suggest an idea or enhancement for this project
3+
title: "[Feature]: "
4+
labels: ["Enhancement"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
Thanks for taking the time to suggest a new feature! Please provide a clear and detailed explanation.
10+
11+
- type: textarea
12+
id: problem-description
13+
attributes:
14+
label: Is your feature request related to a problem? Please describe.
15+
description: "A clear and concise description of what the problem is. Ex. This will help with the oEmbed project to..."
16+
validations:
17+
required: true
18+
19+
- type: textarea
20+
id: solution-description
21+
attributes:
22+
label: Describe the solution you'd like
23+
description: "A clear and concise description of what you want to happen."
24+
validations:
25+
required: true
26+
27+
- type: textarea
28+
id: alternatives
29+
attributes:
30+
label: Describe alternatives you've considered
31+
description: "A clear and concise description of any alternative solutions or features you've considered."
32+
33+
- type: textarea
34+
id: additional-context
35+
attributes:
36+
label: Additional Context
37+
description: "Add any other context or screenshots about the feature request here."
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
name: Add a New oEmbed Provider
2+
description: Request to add a new oEmbed provider to the registry
3+
title: "Add Provider: [Provider Name]"
4+
labels: ["Provider"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
Thank you for contributing to the oEmbed provider registry! Please fill out the following fields as accurately as possible.
10+
11+
- type: input
12+
id: provider-name
13+
attributes:
14+
label: Provider Name
15+
description: "The official name of the service."
16+
placeholder: "eg Example"
17+
validations:
18+
required: true
19+
20+
- type: input
21+
id: provider-url
22+
attributes:
23+
label: Provider URL
24+
description: "The main homepage for the service."
25+
placeholder: "https://www.example.com/"
26+
validations:
27+
required: true
28+
29+
- type: textarea
30+
id: schemes
31+
attributes:
32+
label: URL Schemes
33+
description: "A list of URL schemes that the oEmbed endpoint should match. Use a wildcard (*) for variable parts. Please list one scheme per line."
34+
placeholder: |
35+
https://*.example.com/watch*
36+
https://example.net/*
37+
validations:
38+
required: true
39+
40+
- type: input
41+
id: endpoint-url
42+
attributes:
43+
label: oEmbed Endpoint URL
44+
description: "The URL for the oEmbed API endpoint."
45+
placeholder: "https://www.example.com/oembed"
46+
validations:
47+
required: true
48+
49+
- type: dropdown
50+
id: discovery
51+
attributes:
52+
label: Discovery Support
53+
description: "Does the provider support oEmbed discovery via <link> tags in their HTML?"
54+
options:
55+
- "Yes"
56+
- "No"
57+
- "I don't know"
58+
validations:
59+
required: true
60+
61+
- type: textarea
62+
id: example-urls
63+
attributes:
64+
label: Example URLs
65+
description: "Please provide at least one full, working oEmbed API URL to a valid resource that we can use for testing."
66+
placeholder: "https://www.example.com/oembed?url=https%3A%2F%2Fwww.example.com%2Fwatch%3Fv%3DiwGFalTRHDA"
67+
validations:
68+
required: true

.github/workflows/stale-issues.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Stale Issues Management
2+
3+
on:
4+
schedule:
5+
- cron: '0 5 * * *'
6+
workflow_dispatch:
7+
8+
jobs:
9+
stale:
10+
runs-on: ubuntu-latest
11+
permissions:
12+
issues: write
13+
pull-requests: write
14+
15+
steps:
16+
- name: Mark and close stale issues
17+
uses: actions/stale@v9
18+
with:
19+
repo-token: ${{ secrets.GITHUB_TOKEN }}
20+
21+
stale-issue-message: >
22+
This issue has been automatically marked as stale because it has not had
23+
recent activity. It will be closed if no further activity occurs within 7 days of this post.
24+
25+
stale-issue-label: 'stale'
26+
27+
days-before-stale: 7
28+
29+
days-before-close: 7
30+
31+
exempt-issue-labels: 'Postpone'

0 commit comments

Comments
 (0)