Welcome to the comprehensive documentation for Audio Plugin Coder (APC) - the AI-powered framework for building professional audio plugins.
New to APC? Start here:
- Project Overview - What is APC and key features
- Plugin Development Lifecycle - The five-phase workflow
- Command Reference - All available commands
- FAQ - Common questions answered
| Document | Description |
|---|---|
| Project Structure | Complete directory layout and file organization |
| Plugin Development Lifecycle | Detailed guide to all five phases |
| Command Reference | All slash commands and PowerShell scripts |
| FAQ | Frequently asked questions |
| Document | Description |
|---|---|
| State Management Deep Dive | How APC tracks and manages project state |
| Build System | CMake configuration and build scripts |
| WebView Framework | Building plugins with HTML/CSS/JS UIs |
| Document | Description |
|---|---|
| Ship Workflow | Packaging and distribution process |
| GitHub Actions | CI/CD for cross-platform builds |
| Icon Management | Adding icons to plugins |
| Installer Creation | Creating platform installers |
| Document | Description |
|---|---|
| Troubleshooting Guide | Common issues and solutions |
| Known Issues | Database of known problems |
| Document | Location | Description |
|---|---|---|
| Agent Rules | .agent/rules/agent.md | Critical rules for AI agents |
| File Naming | .agent/rules/file-naming-conventions.md | Naming conventions |
| JUCE Protocols | .agent/rules/juce-build-protocols.md | Build system rules |
| State Guide | .agent/guides/state-management-guide.md | State management guide |
| WebView Templates | .agent/templates/webview/ | Starter templates |
APC uses a structured workflow for plugin development:
💭 DREAM → 📋 PLAN → 🎨 DESIGN → 💻 IMPLEMENT → 🚀 SHIP
| Phase | Command | Output |
|---|---|---|
| DREAM | /dream MyPlugin |
Concept + Parameters |
| PLAN | /plan MyPlugin |
Architecture + Framework |
| DESIGN | /design MyPlugin |
UI Specifications |
| IMPLEMENT | /impl MyPlugin |
Working Code |
| SHIP | /ship MyPlugin |
Distribution Package |
Learn more: Plugin Development Lifecycle
/dream MyPlugin # Start new plugin
/plan MyPlugin # Define architecture
/design MyPlugin # Create UI design
/impl MyPlugin # Implement code
/ship MyPlugin # Package and distribute
/status MyPlugin # Check progress
/resume MyPlugin # Continue development
/test MyPlugin # Run validation
/debug MyPlugin # Debug issues
# Build plugin
powershell -ExecutionPolicy Bypass -File .\scripts\build-and-install.ps1 -PluginName MyPlugin
# Validate setup
.\scripts\validate-plugin-status.ps1 -PluginName MyPlugin
# Check system
.\scripts\system-check.ps1Full reference: Command Reference
APC supports two UI frameworks:
- Modern web technologies
- Fast iteration with hot reload
- Rich visualizations
- Best for: Complex UIs, real-time graphics
Learn more: WebView Framework Guide
- Native C++ UI via Visage frames
- Maximum performance
- Full C++ control
- Best for: Simple UIs, performance-critical plugins
Note: Visage integration is in active testing and may be unstable on some hosts.
| Platform | Local Build | GitHub Actions | Formats |
|---|---|---|---|
| Windows 11 | ✅ Native | ✅ | VST3, Standalone |
| macOS | ❌ | ✅ | VST3, AU, Standalone |
| Linux | ❌ | ✅ | VST3, LV2, Standalone |
audio-plugin-coder/
├── .agent/ # AI agent configuration
│ ├── skills/ # Domain knowledge
│ ├── workflows/ # Slash commands
│ ├── rules/ # System constraints
│ └── troubleshooting/ # Known issues
├── _tools/ # JUCE, pluginval
├── docs/ # This documentation
├── plugins/ # Your plugins
├── scripts/ # Build automation
└── build/ # Build artifacts
Learn more: Project Structure
Every plugin has a status.json file that tracks:
- Current development phase
- UI framework selection
- Validation checkpoints
- Error recovery points
This enables:
- Resume development anytime
- Switch AI agents without losing context
- Automatic prerequisite validation
- Rollback capabilities
Learn more: State Management Deep Dive
Having issues? Check these resources:
- Troubleshooting Guide - Common problems and solutions
- Known Issues - Database of known problems
- Validation Scripts:
.\scripts\validate-plugin-status.ps1 -PluginName MyPlugin .\scripts\validate-webview-setup.ps1 -PluginName MyPlugin
Want to improve APC? See CONTRIBUTING.md for:
- Adding new skills
- Reporting bugs
- Improving documentation
- Testing on different platforms
- JUCE Documentation - Audio plugin framework
- VST3 SDK - Steinberg's VST3 docs
- WebView2 Documentation - Microsoft's WebView2
APC is licensed under the MIT License. See LICENSE for details.
Need help? Check the FAQ or review the troubleshooting guide.