PS5NorModifier icon indicating copy to clipboard operation
PS5NorModifier copied to clipboard

Implement GitHub Templates with YAML Issue Forms

Open DanyHenriquez opened this issue 8 months ago • 0 comments

Overview

Add standardized templates for GitHub contributions using YAML-based issue forms, PR templates, and other contribution workflows.

Description

By providing templates, we can make sure consistent formatting and gather information.

Benefits

  • Improved Consistency: Standardized format for all contributions
  • Better over all Experience: Clear guidance on what information to provide
  • Reduced Workload: Less time spent requesting missing information
  • Project Organization: Easier to triage, categorize, and prioritize issues and PRs

Implementation Details

1. Issue Forms (YAML-based)

Create multiple issue forms using GitHub's YAML schema for a more structured approach:

  • Bug Report Form

    # Example fields (to be customized):
    - type: markdown
      attributes:
        value: "## Bug Report"
    - type: input
      id: version
      attributes:
        label: Version
        description: What version are you using?
      validations:
        required: true
    - type: dropdown
      id: type
      attributes:
        label: Type
        options:
          - PS5 NOR Modifier
          - UART-CL
    - type: textarea
      id: reproduction
      attributes:
        label: Steps to Reproduce
        description: How can we reproduce this issue?
      validations:
        required: true
    - type: textarea
      id: expected
      attributes:
        label: Expected Behavior
    - type: textarea
      id: actual
      attributes:
        label: Actual Behavior
    - type: input
      id: logs
      attributes:
        label: Relevant Logs/Screenshots
    
  • Feature Request Form

    # Example fields (to be customized):
    - type: markdown
      attributes:
        value: "## Feature Request"
    - type: textarea
      id: problem
      attributes:
        label: Problem
        description: What problem are you trying to solve?
      validations:
        required: true
    - type: textarea
      id: solution
      attributes:
        label: Proposed Solution
      validations:
        required: true
    - type: textarea
      id: alternatives
      attributes:
        label: Alternatives Considered
    - type: checkboxes
      id: terms
      attributes:
        label: Additional Checks
        options:
          - label: I've searched existing issues to avoid duplicates
            required: true
          - label: I'm willing to contribute to this feature
    
  • Documentation Improvement Form

    # Example fields (to be customized):
    - type: markdown
      attributes:
        value: "## Documentation Improvement"
    - type: input
      id: doc_link
      attributes:
        label: Documentation Link
        description: Which documentation needs improvement?
      validations:
        required: true
    - type: textarea
      id: missing_info
      attributes:
        label: Missing/Incorrect Information
      validations:
        required: true
    - type: textarea
      id: suggested_changes
      attributes:
        label: Suggested Changes
    

2. Pull Request Template

Create a PR template:

  • Description of changes
  • Related issue(s)
  • Type of change (bug, feature, breaking change, refactor, CI)
  • Checklist for the author (tests added, documentation updated, etc.)
  • Screenshots (if needed)

3. CONTRIBUTING.md

Create a contribution guide:

  • Coding standards
  • Commit message format (following conventional commits)
  • Branch naming conventions
  • Review process
  • Release process

Files to Add

  • .github/ISSUE_TEMPLATE/config.yml (for issue form configuration)
  • .github/ISSUE_TEMPLATE/*.yml (YAML issue forms)
  • .github/PULL_REQUEST_TEMPLATE.md
  • CONTRIBUTING.md

Questions

  • Should we have legacy markdown templates alongside YAML issue forms for backward compatibility?
  • Do we want to implement issue and PR labeling automation?
  • Should we add issue template configuration to control which templates are shown?

DanyHenriquez avatar May 17 '25 10:05 DanyHenriquez