A sophisticated macOS application for seamless audio plugin installation with a beautiful, modern interface
Maestro is a professional-grade audio plugin installer designed specifically for macOS. It provides a beautiful, intuitive graphical interface for installing audio plugins while giving users precise control over the installation process. Whether you're dealing with complex .pkg installers or direct plugin files, Maestro makes the process seamless and secure.
- Dark theme with gradient backgrounds (#1a1a2e to #16213e)
- Intuitive drag-and-drop functionality
- Real-time progress tracking
- Native macOS dialogs and notifications
- Automatic .pkg file extraction and analysis
- Discovers all audio plugins within installers
- Plugin selection with detailed information
- Preview before installation
- .pkg - Installer packages
- .component - Audio Unit plugins
- .vst - VST 2.x plugins
- .vst3 - VST 3.x plugins
- .aax - AAX (Pro Tools) plugins
- User and system-wide installation options
- Automatic code signing of installed plugins
- Secure password handling for administrator privileges
- Safe temporary file management
- Selective plugin installation from packages
- Real-time installation progress
- Detailed results reporting
- File association for double-click installation
- Native macOS integration
Maestro uses a hybrid architecture combining three main components:
- Lightweight macOS application shell
- WKWebView hosting for web interface
- Native dialog handling
- Background process management
- File association handling
- Flask-based HTTP server
- Package analysis and extraction
- Plugin installation logic
- Code signing automation
- Secure command execution
- Modern HTML5/CSS3/JavaScript frontend
- Drag-and-drop file handling
- Real-time communication with backend
- Responsive design
- Dark theme implementation
- macOS 10.15+ (Catalina or later)
- Python 3.7+ (usually pre-installed on modern macOS)
- Xcode Command Line Tools (for building from source)
- Download
Maestro_Standalone.appfrom the releases - Copy to your
/Applicationsfolder - Right-click and select "Open" (first time only)
- Grant necessary permissions when prompted
# Clone the repository
git clone https://github.com/yourusername/maestro.git
cd maestro/Maestro_Project
# Run the build script
chmod +x build/create_maestro_standalone.sh
./build/create_maestro_standalone.sh
# The built app will be in build/Maestro_Standalone.app- Launch Maestro
- Drag plugin files (.component, .vst, .vst3, .aax) onto the app window
- Choose installation location:
- User:
~/Library/Audio/Plug-Ins/(no admin password required) - System:
/Library/Audio/Plug-Ins/(requires admin password)
- User:
- Click "Install Selected Plugins"
- Enter admin password if installing system-wide
- Monitor progress and view results
- Drag a .pkg installer file onto Maestro
- Wait for automatic package analysis
- Review the list of discovered plugins
- Select/deselect plugins you want to install
- Choose installation location
- Click "Install Selected Plugins"
- Monitor the installation process
- Settings: Access installation preferences
- Progress Monitoring: Real-time installation feedback
- Error Handling: Detailed error reporting and resolution guidance
- Plugin Management: View installation results and locations
Maestro_Project/
βββ src/
β βββ swift/
β β βββ main.swift # Native macOS wrapper
β βββ python/
β β βββ maestro_backend.py # Backend server
β βββ web/
β βββ index.html # Main interface
β βββ styles.css # Dark theme styles
β βββ script.js # Application logic
β βββ assets/
β βββ icon.png # Application icon
βββ build/
β βββ create_maestro_standalone.sh # Build script
βββ README.md # This file
cd Maestro_Project
./build/create_maestro_standalone.sh- macOS development environment
- Xcode or Command Line Tools
- Python 3.7+ with pip
- Required Python packages:
- Flask==2.3.3
- Flask-CORS==4.0.0
- Werkzeug==2.3.7
# Start the backend server
cd src/python
python3 maestro_backend.py --debug
# Open the web interface in a browser
open http://127.0.0.1:8080- Code Signing: All installed plugins are automatically code-signed
- Password Security: Admin passwords are handled securely and never stored
- Temporary Files: Secure cleanup of all temporary files
- Network Security: Local-only HTTP server with CORS protection
- File Validation: Comprehensive validation of all plugin files
- Primary Gradient:
#1a1a2eβ#16213e - Accent Colors:
#6366f1(purple) for highlights - Text Colors: White (
#ffffff) primary, muted grays for secondary - Status Colors: Green for success, red for errors, blue for info
- Primary Font: Inter (web-safe fallbacks included)
- Sizing: Responsive scaling from 12px to 24px
- Weights: 300-700 range for proper hierarchy
- Hover Effects: Subtle animations and state changes
- Progress Indicators: Real-time feedback with animated progress bars
- Modal Dialogs: Native-style overlays for important actions
- Notifications: Toast-style messages with auto-dismiss
~/Library/Audio/Plug-Ins/
βββ Components/ # Audio Unit (.component)
βββ VST/ # VST 2.x (.vst)
βββ VST3/ # VST 3.x (.vst3)
βββ AAX/ # AAX (.aax)
/Library/Audio/Plug-Ins/
βββ Components/ # Audio Unit (.component)
βββ VST/ # VST 2.x (.vst)
βββ VST3/ # VST 3.x (.vst3)
βββ AAX/ # AAX (.aax)
- Application Bundle:
/Applications/Maestro_Standalone.app - Backend Server:
Contents/Resources/maestro_backend.py - Web Interface:
Contents/Resources/index.html - Temporary Files: System temporary directory (auto-cleaned)
- Right-click the app and select "Open"
- Click "Open" in the security dialog
- Check if any firewall is blocking local connections
- Ensure Python 3 is installed and accessible
- Try restarting the application
- Verify you have proper permissions for the target directory
- Check available disk space
- Ensure the plugin files are not corrupted
- Try installing to user directory first
- This is usually safe to ignore for personal use
- Install Xcode for proper code signing tools
- Use system installation only when necessary
Run the backend in debug mode for detailed logging:
python3 maestro_backend.py --debug --port 8080We welcome contributions! Please see our contributing guidelines:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow Swift and Python style guidelines
- Maintain backward compatibility
- Add tests for new features
- Update documentation
This project is licensed under the MIT License - see the LICENSE file for details.
- Apple - For the excellent macOS development frameworks
- Flask Community - For the robust web framework
- Audio Plugin Developers - For creating the amazing tools we help install
- GitHub Issues: For bug reports and feature requests
- Documentation: Comprehensive guides in the wiki
- Community: Join discussions in the issues section
Made with β€οΈ for the audio production community