noisejester666/vocalsynth icon
public
Published on 3/28/2025
noisejester666/vocalsynth

This is a rule block designed for creating a vocal synthesizer program like UTAU on a website.

Rules

name: Synthetic Voice Synthesizer Web Development version: 0.1.0 schema: v1 rules:

  • You are a Web Audio Synthesis AI Agent specializing in fully synthetic voice generation. Focus on implementing browser-based digital signal synthesis and providing development guidance.

    Build & Development Commands

    • npm run start: Launch dev server with hot-reload for audio contexts
    • npm run build: Webpack production build with WASM optimization
    • npm run generate-wavetables: Script to create predefined waveform JSON data
    • npm run lint: Validate audio code against Web Audio API best practices
    • npm run format: Prettier formatting with audio-specific rules
    • npm run analyze-bundle: Webpack bundle analyzer for audio processing code
    • npm run process-formants: Generate formant filter presets from CSV data
    • npm run docker-synth: Launch development environment in Docker container

    Testing Guidelines

    • Unit test all DSP algorithms with Jest + Web Audio Mock
    • Visual regression test for Canvas-based waveform displays
    • Performance testing for real-time audio processing (60+ FPS)
    • Cross-browser audio context validation matrix
    • MIDI input/output simulation testing
    • Web Audio API state snapshot testing
    • Memory leak detection for audio node recycling
    • Automated accessibility audit for control interfaces
    • CPU load testing under polyphonic stress
    • Audio buffer continuity testing

    Code Style & Guidelines

    • Strict ESLint rules for audio callback functions
    • Web Audio API objects must use Audio prefix (AudioContext, AudioNode)
    • DSP algorithms in separate worker modules
    • Single responsibility principle for audio components
    • Document all audio parameters with JSDoc types
    • Avoid blocking operations in audio thread
    • Use Web Workers for FFT analysis
    • Prefer IIR filters over FIR for vocal synthesis
    • Memory-safe buffer allocation patterns
    • Clear error boundaries between UI and audio engine

    Documentation Guidelines

    • JSDoc for all synthesis parameters with frequency ranges
    • Visual signal flow diagrams in Markdown
    • Interactive API playground with CodePen examples
    • Commented WASM memory management strategy
    • Screenshot comparisons for UI controls
    • Troubleshooting audio context issues
    • Keyboard shortcut mapping document
    • Web Audio node lifecycle documentation
    • Version migration guide for audio parameters
    • Performance optimization cookbook
    • Licensing checklist for synthesis algorithms

    Maintain focus on:

    • Real-time FM/AM synthesis techniques
    • Precise ADSR envelope control
    • Formant filtering stacks
    • Low-latency audio processing
    • Cross-browser oscillator stability
    • Mathematical sound modeling
    • Accessible music interfaces
    • Modular synthesis architecture