Skip to content

Roadmap

Future development plans for the H5P Go SDK.

Current Status

The H5P Go SDK currently supports:

  • ✅ Question Set creation and management
  • ✅ MultiChoice content type (typed)
  • ✅ H5P package creation and export
  • ✅ Comprehensive validation system
  • ✅ Polymorphic semantics field handling
  • ✅ Builder pattern for content creation

Short Term (Next 3-6 months)

Content Type Support

  • [ ] Essay Content Type - Open-ended text responses
  • [ ] True/False Content Type - Simple true/false questions
  • [ ] Single Choice Set - Optimized single-choice questions
  • [ ] Image Hotspots - Interactive image-based questions

Enhanced Validation

  • [ ] Cross-field validation - Relationships between fields
  • [ ] Business logic validation - Sensible value checking
  • [ ] Custom validation rules - User-defined validation
  • [ ] Validation performance - Optimize validation speed

Developer Experience

  • [ ] Better error messages - More helpful validation errors
  • [ ] Code generation - Generate types from semantics
  • [ ] CLI tool - Command-line H5P utilities
  • [ ] VS Code extension - IDE support for H5P development

Medium Term (6-12 months)

Advanced Features

  • [ ] Content migration tools - Version upgrade utilities
  • [ ] Template system - Pre-built content templates
  • [ ] Batch operations - Process multiple content items
  • [ ] Content analytics - Usage and performance metrics

Integration Support

  • [ ] LMS integration helpers - Moodle, Canvas, etc.
  • [ ] WordPress plugin support - Direct WordPress integration
  • [ ] RESTful API wrapper - HTTP API for H5P operations
  • [ ] GraphQL schema - GraphQL support for H5P content

Performance & Scale

  • [ ] Streaming processing - Handle large content sets
  • [ ] Parallel processing - Concurrent content operations
  • [ ] Memory optimization - Reduce memory footprint
  • [ ] Caching system - Performance optimization

Long Term (12+ months)

Ecosystem Expansion

  • [ ] H5P Editor integration - Visual content editor
  • [ ] Content marketplace - Share and distribute content
  • [ ] Custom content types - Framework for new content types
  • [ ] Plugin architecture - Extensible functionality

Advanced Content Types

  • [ ] Interactive Video - Video with embedded interactions
  • [ ] Course Presentation - Slide-based presentations
  • [ ] Interactive Timeline - Time-based content
  • [ ] Virtual Tour - 360° and VR content

Enterprise Features

  • [ ] Multi-tenant support - Isolated content spaces
  • [ ] SSO integration - Enterprise authentication
  • [ ] Audit logging - Content change tracking
  • [ ] Advanced permissions - Fine-grained access control

Community Priorities

Based on community feedback, we'll prioritize:

  1. More Content Types - Expanding beyond MultiChoice
  2. Better Documentation - More examples and tutorials
  3. Integration Guides - Platform-specific integration help
  4. Performance - Faster content processing
  5. Testing Tools - Better validation and testing utilities

How to Contribute

High Impact Areas

  • Content Type Implementation - Add support for new H5P content types
  • Validation Improvements - Enhance content validation
  • Documentation - Create tutorials and examples
  • Testing - Improve test coverage and quality

Getting Started

  1. Check the Contributing Guide for setup instructions
  2. Look for issues labeled good-first-issue or help-wanted
  3. Join discussions on content type priorities
  4. Submit bug reports and feature requests

Requesting Features

When requesting features: 1. Check existing issues to avoid duplicates 2. Provide use cases explaining why the feature is needed
3. Include examples of how the feature would be used 4. Consider implementation - think about how it might work

Example feature request:

## Feature Request: Interactive Timeline Support

### Use Case
Educational content creators need to present historical events 
in an interactive timeline format.

### Proposed Solution  
Add support for H5P.Timeline content type with:
- Event plotting on timeline
- Rich media for each event
- Zoom and navigation controls

### Additional Context
Timeline is one of the most requested content types in 
H5P community forums.

Technology Considerations

Go Ecosystem

  • Modules - Maintain Go module compatibility
  • Generics - Evaluate using Go generics for type safety
  • Performance - Leverage Go's concurrency features
  • Testing - Use Go's excellent testing framework

H5P Compatibility

  • Specification compliance - Follow official H5P specs
  • Version compatibility - Support multiple H5P versions
  • Platform testing - Ensure cross-platform compatibility
  • Standards adherence - Follow web standards and accessibility

Development Process

  • Semantic versioning - Predictable version releases
  • Backward compatibility - Minimize breaking changes
  • Documentation-driven - Document before implementing
  • Test-driven development - Tests first, then implementation

Release Schedule

Minor Releases (Monthly)

  • Bug fixes
  • Small feature additions
  • Documentation updates
  • Performance improvements

Major Releases (Quarterly)

  • New content type support
  • Significant API changes
  • Major feature additions
  • Breaking changes (when necessary)

Patch Releases (As Needed)

  • Critical bug fixes
  • Security updates
  • Documentation corrections

Feedback and Input

We welcome feedback on this roadmap:

  • GitHub Issues - Feature requests and bug reports
  • GitHub Discussions - Ideas and general feedback
  • Community Surveys - Periodic priority surveys
  • Direct Contact - Reach out to maintainers

Your input helps shape the future of the H5P Go SDK. Thank you for being part of the community!


Last updated: January 2024
This roadmap is subject to change based on community feedback and development priorities.