name: Feature Request description: Suggest an idea or enhancement for this project title: "[Feature]: " labels: ["enhancement", "triage"] assignees: [] body: - type: markdown attributes: value: | Thanks for suggesting a new feature! Please provide as much detail as possible to help us understand your request and its potential impact. - type: input id: version attributes: label: Library Version description: What version of the library are you currently using? placeholder: "v1.0.0" validations: required: true - type: textarea id: problem attributes: label: Problem Description description: Is your feature request related to a problem? Please describe what you're trying to accomplish. placeholder: "I'm always frustrated when... / I need to be able to... / Currently it's not possible to..." validations: required: true - type: textarea id: solution attributes: label: Proposed Solution description: Describe the solution you'd like to see implemented. placeholder: "I would like to see... / A new function that... / An option to..." validations: required: true - type: textarea id: alternatives attributes: label: Alternatives Considered description: Describe any alternative solutions or features you've considered. placeholder: "I considered... / Another approach could be... / Workaround I'm currently using..." validations: required: false - type: dropdown id: component attributes: label: Component description: Which component would this feature affect? multiple: true options: - "Client Library (pkg/client)" - "WebSocket Events" - "Device Discovery" - "CLI Tool" - "Models/XML Parsing" - "Documentation" - "Examples" - "New API Endpoint" - "Performance Optimization" - "Developer Experience" validations: required: true - type: dropdown id: device-compatibility attributes: label: Device Compatibility description: Which Bose SoundTouch devices should this feature support? multiple: true options: - "All SoundTouch devices" - "SoundTouch 10" - "SoundTouch 20" - "SoundTouch 30" - "SoundTouch Portable" - "SoundTouch Wave" - "Other (specify in description)" validations: required: false - type: dropdown id: priority attributes: label: Priority description: How important is this feature to you? options: - "Low - Nice to have" - "Medium - Would improve my workflow" - "High - Important for my use case" - "Critical - Blocking my project" validations: required: true - type: dropdown id: api-type attributes: label: API Type (if applicable) description: What type of API enhancement is this? options: - "Not applicable" - "New Bose SoundTouch endpoint" - "Enhancement to existing endpoint" - "Client library improvement" - "WebSocket event enhancement" - "Discovery enhancement" - "CLI command addition" validations: required: false - type: textarea id: use-case attributes: label: Use Case / User Story description: Describe your specific use case or user story placeholder: | As a [type of user], I want to [goal] so that [benefit]. Example: As a home automation developer, I want to create custom zones so that I can group speakers dynamically based on user preferences. validations: required: true - type: textarea id: example-api attributes: label: Desired API Example description: Show how you'd like the API to work (if applicable) render: go placeholder: | // Example of how you envision using this feature client := soundtouch.New("192.0.2.100", 8090) // Your desired API call result, err := client.NewFeature(options) if err != nil { // handle error } // Use the result fmt.Println(result) validations: required: false - type: textarea id: technical-details attributes: label: Technical Details description: Any technical considerations, constraints, or implementation ideas? placeholder: | - Should this be backward compatible? - Any performance considerations? - Integration with existing features? - External dependencies needed? validations: required: false - type: checkboxes id: implementation attributes: label: Implementation description: Are you willing to help implement this feature? options: - label: "I can help implement this feature" - label: "I can provide testing/feedback" - label: "I can help with documentation" - label: "I need someone else to implement this" - type: textarea id: research attributes: label: Research & References description: Have you found any relevant resources, similar implementations, or Bose documentation? placeholder: | - Links to relevant documentation - Similar features in other libraries - Bose SoundTouch API references - Related GitHub issues or discussions validations: required: false - type: checkboxes id: checklist attributes: label: Checklist description: Please confirm the following options: - label: "I have searched for existing issues and feature requests" required: true - label: "I have checked the [API Cookbook](docs/API-COOKBOOK.md) for existing functionality" required: true - label: "This feature is related to Bose SoundTouch functionality" required: true - label: "I have considered backward compatibility" - type: checkboxes id: terms attributes: label: Code of Conduct description: By submitting this feature request, you agree to follow our Code of Conduct options: - label: "I agree to follow this project's Code of Conduct" required: true