Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add GitHub Issue Template Schema Form #1758

Open
utsavdotdev opened this issue Oct 9, 2024 · 4 comments
Open

Add GitHub Issue Template Schema Form #1758

utsavdotdev opened this issue Oct 9, 2024 · 4 comments

Comments

@utsavdotdev
Copy link

Description:
To streamline the process of creating issues and ensure consistency, we need to add a GitHub issue template schema form. This will help contributors easily provide all the necessary details when reporting bugs, suggesting features, or requesting documentation.

Requirements:

  1. Create an issue template that includes fields for:
    • Issue Type (Bug, Feature Request,Documentation)
    • Description
    • Steps to Reproduce (for Bug reports)
    • Expected Outcome
    • Additional Context or Screenshots
  2. Ensure the template is easy to navigate and fills out the required fields.

Proposed Changes:

  1. Implement the issue template in .github/ISSUE_TEMPLATE folder.
  2. Test the template to verify the form fields populate correctly.

Before and After:

Before:
Screenshot 2024-10-09 at 7 03 35 PM

After:
Screenshot 2024-10-09 at 7 02 52 PM

Additional Information:
If you have any suggestions for extra fields or modifications, please mention them in the comments.

PS: I am willing to submit the Pull Request

@dannysauer
Copy link
Contributor

Bear in mind that the more fields a bug report template has, the less likely I am to complete the high-friction process. In projects like that, I'll sometimes just deal with it or move to a different product. Forcing me to paste in debug output from a bunch of commands, list my OS and my mother's maiden name, and splitting it up into a half dozen mandatory fields for "this error message is spelled incorrectly" just means the project doesn't actually care about my bug report.

In particular, it drives me nuts when there's a title, then a description field, and then expected and actual results with reproduction steps. The reproduction steps and behavior literally are the description in a whole lot of cases, and the title is a summary of the same thing again. Basically, don't make me submit the bug more than once; this isn't some psychological test where the goal is to trip liars up by asking the same question three different ways. 🤣

Maybe leave the phallus or whatever emoji out of the "bug report" title, too. Heck, consider the people using screen readers and just omit all the emoji.

I know. Grumpy old man. Just please keep the friction down and stick to the basics necessary for functionality. :)

@utsavdotdev
Copy link
Author

Got it! I'll keep the bug report form short, simple, and without the redundant fields. No emojis, just the essentials. By the way, Thanks for the exceptional reply childish boy.

So Can I raised the PR ?🤣

@SahibAjitSingh
Copy link

GitHub Issue Template Schema Form Implementation

To create a GitHub issue template schema form, we will implement the proposed changes. Here's a step-by-step guide:

Step 1: Create the Issue Template Folder and File

Create a new folder named .github in the root directory of your repository if it doesn't already exist. Inside the .github folder, create another folder named ISSUE_TEMPLATE.

Create a new file named issue-template.md inside the ISSUE_TEMPLATE folder.

Step 2: Define the Issue Template Schema

In the issue-template.md file, add the following YAML front matter to define the issue template schema:

name: Issue Template
description: A template for reporting bugs, suggesting features, or requesting documentation
labels: ["bug", "feature request", "documentation"]

Step 3: Add Form Fields

Below the YAML front matter, add the following form fields using Markdown:
Issue Type
Please select one of the following options:

  • Bug
  • Feature Request
  • Documentation

Description
Please provide a detailed description of the issue:

Steps to Reproduce (for Bug reports)
Please provide the steps to reproduce the issue:

Expected Outcome
Please describe the expected outcome:

Additional Context or Screenshots
Please provide any additional context or screenshots:
Step 4: Test the Template

To test the template, go to your repository's issues page and click on the "New issue" button. You should see the issue template schema form populated with the fields we defined.

Example Use Case

Issue Type

  • Bug

Description
The login button is not working on the homepage.

Steps to Reproduce (for Bug reports)

  1. Go to the homepage
  2. Click on the login button
  3. Observe the error message

Expected Outcome
The login button should redirect to the login page.

Additional Context or Screenshots
[Insert screenshot of error message]
try this i am not good in this but i tried

@ben-of-codecraft
Copy link
Contributor

I recommend you separate out bugs and feature requests., then use an auto-labeler to apply the correct label based on submission. If you want to get really complex with it, you can add an action that adds a community submitted label for anyone that submits a PR that is not on CODEOWNERS.

Here is the ones I use from our fork

Bug/Issues:

name: Bug or Issue
description: Report an issue.
body:
  - type: markdown
    attributes:
      value: |
        Thanks for taking the time to fill out this form! Please make sure to fill all fields, including the Title above.
  - type: textarea
    id: description
    attributes:
      label: Description
      description: |
        Description of the problem or issue here.        
    validations:
      required: true
  - type: textarea
    id: expected
    attributes:
      label: Expected behaviour
      description: |
        Tell us what should happen instead.
    validations:
      required: true
  - type: textarea
    id: reproduce
    attributes:
      label: Steps to reproduce the problem
      description: |
        1. Step 1
        2. Step 2
        3. Step 3
    validations:
      required: true
  - type: textarea
    id: commit
    attributes:     
      label: Stack Trace
      description: |
        Stack trace or specific error request / responses from api transactions.
    validations:
      required: false
  - type: textarea
    id: other
    attributes:
      label: Other Info
      description: |
        List of any other information that would help us debug the problem
    validations:
      required: false

Feature:

name: Feature request
description: Request a new feature to be built into this project. 
body:
  - type: markdown
    attributes:
      value: |
        Thanks for taking the time to fill out this form! Please make sure to fill all fields, including the Title above.
  - type: textarea
    id: description
    attributes:
      label: Description
      description: |
        Brief description of the feature and how it will help you are the project succeed.        
    validations:
      required: true
  - type: textarea
    id: expected
    attributes:
      label: Expected behaviour
      description: |
        Tell us how you would like it to work and what you expect to see.
    validations:
      required: true  
  - type: textarea
    id: example
    attributes:     
      label: Examples of usage
      description: |
        If this is a feature you have seen elsewhere, please provide examples of how it is used.
    validations:
      required: false
  - type: textarea
    id: other
    attributes:
      label: Other Info
      description: |
        List of any other information that would help us understand the feature request.
    validations:
      required: false

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants