Plugin Templates
These starter templates give you a working HyperHQ plugin in a few common languages. Start with the one closest to your project, run it unchanged, then adapt it in small steps.
Available Templates
Go Template
Best for: Small executables, system utilities, concurrent work
- Full Socket.IO client implementation
- Challenge-response authentication
- Cross-platform builds for Windows, macOS, and Linux
- Small executable size
- Good concurrency support with goroutines
C# Template
Best for: Windows development, .NET integrations, structured logging
- Modern async/await patterns
- Microsoft.Extensions.Logging integration
- SocketIOClient library
- Single-file deployment option
- Strong typing and IDE support
Python Template
Best for: First plugins, quick automation, library-heavy integrations
- Simple, readable syntax
- python-socketio support
- Straightforward debugging
- Large package ecosystem
- Cross-platform builds through PyInstaller
Comparison Matrix
| Feature | Go | C# | Python |
|---|---|---|---|
| Difficulty | Moderate | Moderate | Easy |
| Executable Size | Small | Larger | Medium |
| Startup Time | Fast | Medium | Medium |
| Memory Usage | Low | Medium | Medium |
| Cross-platform | Yes | Best on Windows | Yes |
| Performance | Excellent | Good | Good |
| Learning Curve | Moderate | Moderate | Easy |
What's Included
Each template includes:
- Full source code - Commented and structured
- Authentication - Challenge-response implementation
- Socket.IO client - Real-time communication
- Example handlers - Request, event, and data handlers
- Build scripts - One-command builds where practical
- plugin.json manifest - Pre-configured for the current manifest shape
- Documentation - Language-specific setup notes
Template Location
Templates are included with HyperHQ:
HyperHQ/docs/templates/
├── go-starter/
├── csharp-starter/
└── python-starter/
You can find them in your HyperHQ installation directory under docs/templates/, or download them from each template page.
Quick Start
- Pick a template for a language you know.
- Build it unchanged.
- Install the output beside its
plugin.json. - Test it from HyperHQ.
- Change one behavior or setting at a time.