Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
99 changes: 99 additions & 0 deletions .github/ISSUE_TEMPLATE/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
# Issue Templates

This repository uses modern GitHub Issue Forms (YAML-based templates) to ensure structured and comprehensive issue reporting. These templates help maintainers and contributors by standardizing the information collection process.

## Available Templates

### 🐛 Bug Report (`bug_report.yml`)
Use this template to report bugs, errors, or unexpected behavior.

**Features:**
- Required prerequisite checks
- Structured bug description
- Step-by-step reproduction guide
- Environment information collection
- Support for screenshots and logs
- Dropdown menus for OS and browser selection

### ✨ Feature Request (`feature_request.yml`)
Use this template to suggest new features or enhancements.

**Features:**
- Required prerequisite checks
- Clear problem/use case definition
- Feature type categorization
- Priority level selection
- Implementation ideas collection
- Contribution willingness tracking
- Support for mockups and examples

### ❓ Question or Discussion (`question.yml`)
Use this template for general questions, usage help, or discussions.

**Features:**
- Question type categorization
- Context collection
- Search requirement verification

## Configuration

The `config.yml` file customizes the issue template selection page:
- Disables blank issues to encourage using structured templates
- Provides quick links to documentation and discussions
- Enhances the user experience when creating issues

## Benefits of YAML Issue Forms

1. **Structured Data**: Forms ensure consistent information collection
2. **Required Fields**: Critical information can be marked as mandatory
3. **Validation**: Input validation prevents incomplete submissions
4. **User-Friendly**: Dropdowns, checkboxes, and text areas improve UX
5. **Maintainer Efficiency**: Standardized format makes issues easier to process
6. **Better Analytics**: Structured data enables better issue categorization

## Migration from Markdown Templates

The previous Markdown-based templates have been converted to YAML forms with the following improvements:

- **Bug Reports**: Added OS/browser dropdowns, required field validation, and better structure
- **Feature Requests**: Added feature type categorization, priority levels, and contribution tracking
- **New Template**: Added question/discussion template for general inquiries

## Usage Guidelines

### For Contributors
1. Select the appropriate template when creating an issue
2. Fill out all required fields (marked with red asterisks)
3. Provide as much detail as possible for faster resolution
4. Use the checkboxes to confirm you've followed prerequisites

### For Maintainers
- Review the structured data in each issue
- Use labels automatically applied by templates
- Reference the consistent format when requesting additional information
- Leverage the standardized categories for project analytics

## Customization

To modify these templates:

1. Edit the respective `.yml` files in `.github/ISSUE_TEMPLATE/`
2. Follow the [GitHub Issue Forms syntax](https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/syntax-for-issue-forms)
3. Test changes in a development repository before applying to main
4. Update this README when adding new templates or significant changes

## Template Syntax Reference

Each YAML template includes:
- `name`: Display name for the template
- `description`: Brief description of when to use it
- `title`: Auto-generated title prefix
- `labels`: Automatically applied labels
- `body`: Form fields definition

Common field types:
- `textarea`: Multi-line text input
- `input`: Single-line text input
- `dropdown`: Selection from predefined options
- `checkboxes`: Multiple selection options
- `markdown`: Static text/instructions
30 changes: 0 additions & 30 deletions .github/ISSUE_TEMPLATE/bug_report.md

This file was deleted.

119 changes: 119 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
name: 🐛 Bug Report
description: Report a problem or unexpected behavior
title: "[BUG]: "
labels: ["bug"]
assignees: []

body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report! Please provide as much detail as possible to help us resolve the issue.

- type: checkboxes
id: terms
attributes:
label: Prerequisites
description: Please confirm the following before submitting your bug report
options:
- label: I have searched the existing issues to make sure this bug hasn't been reported yet
required: true
- label: I have read the Contributing Guidelines
required: true

- type: textarea
id: bug-description
attributes:
label: Bug Description
description: A clear and concise description of what the bug is
placeholder: Describe the bug you encountered...
validations:
required: true

- type: textarea
id: reproduction-steps
attributes:
label: Steps to Reproduce
description: Steps to reproduce the behavior
placeholder: |
1. Go to '...'
2. Click on '...'
3. Scroll down to '...'
4. See error
validations:
required: true

- type: textarea
id: expected-behavior
attributes:
label: Expected Behavior
description: A clear and concise description of what you expected to happen
placeholder: What should have happened instead?
validations:
required: true

- type: textarea
id: actual-behavior
attributes:
label: Actual Behavior
description: What actually happened?
placeholder: What actually happened?
validations:
required: true

- type: dropdown
id: operating-system
attributes:
label: Operating System
description: What operating system are you using?
options:
- Windows
- macOS
- Linux (Ubuntu)
- Linux (Other)
- Other
validations:
required: true

- type: dropdown
id: browser
attributes:
label: Browser (if applicable)
description: Which browser are you using?
options:
- Chrome
- Firefox
- Safari
- Edge
- Opera
- Other
- Not applicable

- type: input
id: version
attributes:
label: Version
description: What version of the application/bot are you using?
placeholder: e.g., 1.0.0, latest, commit hash

- type: textarea
id: screenshots
attributes:
label: Screenshots
description: If applicable, add screenshots to help explain your problem
placeholder: You can drag and drop images here or paste them directly

- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Add any other context about the problem here
placeholder: Any additional information that might help us understand the issue

- type: textarea
id: logs
attributes:
label: Error logs or Console Output
description: If applicable, paste any relevant error messages or console output
render: shell
placeholder: Paste error logs here...
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: 📚 Documentation
url: https://github.com/santhosh-005/gssocFAQ-Bot/blob/main/Readme.md
about: Check the documentation for setup and usage instructions
- name: 💬 Discussions
url: https://github.com/santhosh-005/gssocFAQ-Bot/discussions
about: Ask questions and discuss ideas with the community
19 changes: 0 additions & 19 deletions .github/ISSUE_TEMPLATE/feature_request.md

This file was deleted.

111 changes: 111 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
name: ✨ Feature Request
description: Suggest an idea for improvement or a new feature
title: "[FEATURE]: "
labels: ["enhancement"]
assignees: []

body:
- type: markdown
attributes:
value: |
Thank you for suggesting a new feature! Please provide as much detail as possible to help us understand your request.

- type: checkboxes
id: terms
attributes:
label: Prerequisites
description: Please confirm the following before submitting your feature request
options:
- label: I have searched the existing issues to make sure this feature hasn't been requested yet
required: true
- label: I have read the Contributing Guidelines
required: true

- type: textarea
id: feature-description
attributes:
label: Feature Description
description: A clear and concise description of the feature you'd like to see implemented
placeholder: Describe the feature you want to be added...
validations:
required: true

- type: textarea
id: problem-usecase
attributes:
label: Problem / Use Case
description: Explain the problem this feature solves or why it would be useful
placeholder: What problem does this feature solve? Why would it be useful?
validations:
required: true

- type: dropdown
id: feature-type
attributes:
label: Feature Type
description: What type of feature is this?
options:
- New functionality
- Enhancement to existing feature
- Performance improvement
- User interface improvement
- Documentation improvement
- Other
validations:
required: true

- type: dropdown
id: priority
attributes:
label: Priority Level
description: How important is this feature to you?
options:
- Low - Nice to have
- Medium - Would be helpful
- High - Important for my use case
- Critical - Blocking my work

- type: textarea
id: proposed-solution
attributes:
label: Proposed Solution
description: Describe how you think this feature should work
placeholder: How should this feature work? What should the user experience be like?

- type: textarea
id: alternatives-considered
attributes:
label: Alternatives Considered
description: List any alternative solutions or features you've considered
placeholder: What alternatives have you considered? Why is this approach better?

- type: textarea
id: implementation-ideas
attributes:
label: Implementation Ideas (Optional)
description: If you have ideas about how to implement this feature, share them here
placeholder: Any technical implementation suggestions or code snippets

- type: checkboxes
id: contribution
attributes:
label: Contribution
description: Are you willing to contribute to this feature?
options:
- label: I am willing to work on this feature myself
- label: I can provide additional clarification or testing
- label: I can help with documentation

- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Add any other context, mockups, or screenshots about the feature request here
placeholder: Any additional information, mockups, or examples that would help understand the feature

- type: textarea
id: examples
attributes:
label: Examples or References
description: Provide examples of similar features in other projects or tools
placeholder: Links to similar features in other projects, tools, or websites
Loading