name: Feature Request
description: Suggest a new feature or enhancement
title: "[Feature]: "
labels: ["enhancement"]
body:
  - type: markdown
    attributes:
      value: |
        Thanks for suggesting a feature! Please provide details to help us understand your request.

  - type: textarea
    id: problem
    attributes:
      label: Problem Statement
      description: What problem does this feature solve? Is your feature request related to a problem?
      placeholder: "I'm frustrated when... / It would be helpful if..."
    validations:
      required: true

  - type: textarea
    id: solution
    attributes:
      label: Proposed Solution
      description: How would you like this feature to work?
      placeholder: Describe your ideal solution
    validations:
      required: true

  - type: dropdown
    id: category
    attributes:
      label: Feature Category
      description: What type of feature is this?
      options:
        - New MCP Tool
        - Enhancement to Existing Tool
        - Code Execution API
        - Performance Improvement
        - Documentation
        - Developer Experience
        - Security
        - Other
    validations:
      required: true

  - type: dropdown
    id: user-type
    attributes:
      label: Primary User Type
      description: Who would primarily benefit from this feature?
      options:
        - Students
        - Educators/Instructors
        - Administrators
        - Developers
        - All Users
    validations:
      required: true

  - type: textarea
    id: use-cases
    attributes:
      label: Use Cases
      description: Provide specific examples of how this feature would be used
      placeholder: |
        1. When grading assignments, I would use this to...
        2. As a student, this would help me...
    validations:
      required: true

  - type: textarea
    id: alternatives
    attributes:
      label: Alternatives Considered
      description: What alternative solutions or workarounds have you considered?
      placeholder: I currently work around this by...

  - type: textarea
    id: canvas-api
    attributes:
      label: Canvas API Reference
      description: If this relates to a specific Canvas API endpoint, provide links or details
      placeholder: |
        Canvas API endpoint: GET /api/v1/...
        Documentation: https://canvas.instructure.com/doc/api/...

  - type: textarea
    id: additional
    attributes:
      label: Additional Context
      description: Any other context, mockups, or examples
      placeholder: Screenshots, code examples, etc.

  - type: checkboxes
    id: checklist
    attributes:
      label: Pre-submission Checklist
      options:
        - label: I have searched existing issues and feature requests
          required: true
        - label: This feature aligns with Canvas MCP's scope (Canvas LMS integration)
          required: true
        - label: I have reviewed the Canvas API documentation for related endpoints
          required: false
