{"id":50152645,"url":"https://github.com/GareBear99/Instrudio","last_synced_at":"2026-05-24T09:01:45.094Z","repository":{"id":345675082,"uuid":"1186831431","full_name":"GareBear99/Instrudio","owner":"GareBear99","description":"4 free VST3/AU synth plugins — physically modeled violin, piano, harp \u0026 bongos. Native JUCE DSP. MIDI input. Themed UI. Single-source-of-truth architecture.","archived":false,"fork":false,"pushed_at":"2026-05-15T00:07:33.000Z","size":19013,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-15T02:25:19.870Z","etag":null,"topics":["audio-plugin","audio-unit","daw","free-plugin","instrument","juce","midi","music","open-source","physical-modeling","synthesizer","vst","vst3","web-audio"],"latest_commit_sha":null,"homepage":"https://garebear99.github.io/Instrudio/Instrudio_v2/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GareBear99.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-20T03:12:14.000Z","updated_at":"2026-05-15T00:07:37.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/GareBear99/Instrudio","commit_stats":null,"previous_names":["garebear99/instrudio"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/GareBear99/Instrudio","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GareBear99%2FInstrudio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GareBear99%2FInstrudio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GareBear99%2FInstrudio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GareBear99%2FInstrudio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GareBear99","download_url":"https://codeload.github.com/GareBear99/Instrudio/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GareBear99%2FInstrudio/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33427584,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-23T22:14:44.296Z","status":"online","status_checked_at":"2026-05-24T02:00:06.296Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["audio-plugin","audio-unit","daw","free-plugin","instrument","juce","midi","music","open-source","physical-modeling","synthesizer","vst","vst3","web-audio"],"created_at":"2026-05-24T09:01:36.648Z","updated_at":"2026-05-24T09:01:45.077Z","avatar_url":"https://github.com/GareBear99.png","language":"HTML","funding_links":[],"categories":["Academic / Research SEO Positioning"],"sub_categories":["Citation-ready ecosystem anchors"],"readme":"\u003e 🎛️ Part of the [TizWildin Plugin Ecosystem](https://garebear99.github.io/TizWildinEntertainmentHUB/) — 19 free audio plugins with a live update dashboard.\n\u003e\n\u003e [FreeEQ8](https://github.com/GareBear99/FreeEQ8) · [XyloCore](https://github.com/GareBear99/XyloCore) · [Instrudio](https://github.com/GareBear99/Instrudio) · [Therum](https://github.com/GareBear99/Therum_JUCE-Plugin) · [BassMaid](https://github.com/GareBear99/BassMaid) · [SpaceMaid](https://github.com/GareBear99/SpaceMaid) · [GlueMaid](https://github.com/GareBear99/GlueMaid) · [MixMaid](https://github.com/GareBear99/MixMaid) · [MultiMaid](https://github.com/GareBear99/MultiMaid) · [MeterMaid](https://github.com/GareBear99/MeterMaid) · [ChainMaid](https://github.com/GareBear99/ChainMaid) · [PaintMask](https://github.com/GareBear99/PaintMask_Free-JUCE-Plugin) · [WURP](https://github.com/GareBear99/WURP_Toxic-Motion-Engine_JUCE) · [AETHER](https://github.com/GareBear99/AETHER_Choir-Atmosphere-Designer) · [WhisperGate](https://github.com/GareBear99/WhisperGate_Free-JUCE-Plugin) · [RiftWave](https://github.com/GareBear99/RiftWaveSuite_RiftSynth_WaveForm_Lite) · [FreeSampler](https://github.com/GareBear99/FreeSampler_v0.3) · [VF-PlexLab](https://github.com/GareBear99/VF-PlexLab) · [PAP-Forge-Audio](https://github.com/GareBear99/PAP-Forge-Audio)\n\u003e\n\u003e 🎁 [Free Packs \u0026 Samples](#tizwildin-free-sample-packs) — jump to free packs \u0026 samples\n\u003e\n\u003e 🎵 [Awesome Audio](https://github.com/GareBear99/awesome-audio-plugins-dev) — (FREE) Awesome Audio Dev List\n\n# Instrudio — Connected Instrument Ecosystem\n\n\nCross-platform instrument suite where web demos, plugins, and the mobile app all share the same live-updating instrument core.\n\n**Play Online:** [garebear99.github.io/Instrudio/Instrudio_v2/](https://garebear99.github.io/Instrudio/Instrudio_v2/)\n\n## ⬇ Download Plugins (Free)\n\n\u003e **[All Downloads — v2.0.0 Release Page](https://github.com/GareBear99/Instrudio/releases/tag/v2.0.0)**\n\n| Plugin | VST3 (macOS) | AU (macOS) |\n|---|---|---|\n| Studio Violin | [Download VST3](https://github.com/GareBear99/Instrudio/releases/download/v2.0.0/Instrudio-Studio-Violin-VST3-macOS.zip) | [Download AU](https://github.com/GareBear99/Instrudio/releases/download/v2.0.0/Instrudio-Studio-Violin-AU-macOS.zip) |\n| Studio Grand | [Download VST3](https://github.com/GareBear99/Instrudio/releases/download/v2.0.0/Instrudio-Studio-Grand-VST3-macOS.zip) | [Download AU](https://github.com/GareBear99/Instrudio/releases/download/v2.0.0/Instrudio-Studio-Grand-AU-macOS.zip) |\n| Celestial Harp | [Download VST3](https://github.com/GareBear99/Instrudio/releases/download/v2.0.0/Instrudio-Celestial-Harp-VST3-macOS.zip) | [Download AU](https://github.com/GareBear99/Instrudio/releases/download/v2.0.0/Instrudio-Celestial-Harp-AU-macOS.zip) |\n| Studio Bongos | [Download VST3](https://github.com/GareBear99/Instrudio/releases/download/v2.0.0/Instrudio-Studio-Bongos-VST3-macOS.zip) | [Download AU](https://github.com/GareBear99/Instrudio/releases/download/v2.0.0/Instrudio-Studio-Bongos-AU-macOS.zip) |\n\n**Install:** Unzip VST3 → `~/Library/Audio/Plug-Ins/VST3/` · AU → `~/Library/Audio/Plug-Ins/Components/` · Rescan in your DAW.\n\n*Windows builds coming soon.*\n\n---\n\n## V1 Core (fully connected)\n\n| Instrument | MIDI | Bridge | Presets | Definition |\n|---|---|---|---|---|\n| Studio Grand (piano) | ✓ | ✓ | 5 | `studio_grand.json` |\n| Studio Violin | ✓ | ✓ | 6 | `studio_violin.json` |\n| Celestial Harp | ✓ | ✓ | 4 | `celestial_harp.json` |\n| Studio Bongos | ✓ | ✓ | 4 | `studio_bongos.json` |\n\n6 additional instruments (Guitar, Saxophone, Accordion, Harmonica, Bagpipes, Triangle) are playable but not yet wired into the connected SSOT pipeline.\n\n## How it works\n\n### Single Source of Truth\n\nEvery instrument is defined by a JSON file in `Instrudio_v2/instruments/definitions/`. This definition drives:\n\n- **Web page** — title, controls, presets, MIDI CC mappings, note range\n- **Plugin bridge** — instrument ID, control IDs, preset IDs\n- **Mobile app** — same definition, same IDs (planned)\n\n### Remote-first loading\n\n`core/definition-runtime.js` fetches definitions from this GitHub repo first (`raw.githubusercontent.com`), falling back to local files when offline. 5-minute cache TTL.\n\n**To update all outlets:** edit a definition JSON on GitHub → push → every web page, plugin, and mobile client picks up the change automatically.\n\n### External MIDI\n\nThe V1 Core instruments accept MIDI input from any external controller via the Web MIDI API. They also send MIDI output when played, so they can drive external synths/DAWs.\n\nMIDI CC mappings are defined per-instrument in the definition JSON (e.g., CC1 = bow pressure on violin, CC7 = volume, CC74 = brightness).\n\n### Plugin Bridge\n\n`core/bridge-client.js` auto-connects to `ws://localhost:9100`. To run the bridge relay:\n\n```\ncd Instrudio_v2/platform/plugin\nnpm install ws\nnode bridge-server.js\n```\n\nWeb pages and DAW plugins both connect to this relay. Messages follow `platform/plugin/bridge-contract.json`.\n\n## Repository structure\n\n```\nInstrudio_v2/\n├── index.html                    # Homepage\n├── piano.html                    # Studio Grand\n├── violin.html                   # Studio Violin (reference SSOT instrument)\n├── harp.html                     # Celestial Harp\n├── bongo.html                    # Studio Bongos\n├── guitar.html … triangle.html   # 6 additional instruments\n├── instrudio-suite.js            # Shared playback/import engine\n├── core/\n│   ├── definition-runtime.js     # Remote-first SSOT loader\n│   ├── midi-io.js                # Web MIDI I/O module\n│   ├── bridge-client.js          # Plugin WebSocket bridge client\n│   └── v1-ssot-manifest.json     # Release manifest\n├── instruments/\n│   └── definitions/              # ← THE SINGLE SOURCE OF TRUTH\n│       ├── studio_grand.json\n│       ├── studio_violin.json\n│       ├── celestial_harp.json\n│       ├── studio_bongos.json\n│       └── ... (6 more)\n└── platform/\n    ├── plugin/\n    │   ├── bridge-contract.json  # Event protocol spec\n    │   └── bridge-server.js      # Node.js WebSocket relay\n    ├── mobile/\n    │   └── entitlement-model.json\n    └── schemas/\n        ├── instrument.schema.json\n        └── release-manifest.schema.json\n```\n\n\n# Studio Violin: Building a Physically Modelled Bowed-String Instrument in Instrudio\n\nI’m building **Instrudio**, a browser-based virtual instrument ecosystem, and the flagship instrument right now is **Studio Violin**.\n\nStudio Violin is a physically modelled bowed-string instrument built around Helmholtz motion synthesis, H2 harmonic correction, inharmonicity modelling, Stradivari-style body resonances, sympathetic open-string resonance, and live MIDI control.\n\nThe goal is not just to make a violin-like web instrument. The goal is to prove that a single version-controlled instrument definition can drive synthesis, UI, MIDI routing, plugin bridge behavior, presets, and live update propagation from one source of truth.\n\n## What Studio Violin does\n\nStudio Violin models the behavior of a bowed violin string using a synthesis chain designed around acoustic measurements and practical browser audio constraints.\n\nThe instrument includes:\n\n- Helmholtz bowed-string waveform synthesis\n- H2 correction oscillator\n- Inharmonicity chorus per string\n- 8-band Stradivari-style body EQ\n- Per-string tonal offsets\n- Sympathetic open-string resonance\n- Nonlinear bow coupling\n- Pressure-coupled vibrato\n- Interval-scaled portamento\n- Bow-pressure, bow-speed, bow-point, character, brightness, attack, and vibrato controls\n- External MIDI routing through the Instrudio app\n\n## Synthesis model\n\nThe Helmholtz waveform uses a Fourier-style bowed-string model:\n\n\nbₙ = −(2 / (n²π²D(1−D))) · sin(nπD)\nD = 0.5 + bowPressure × 0.30\n\n## Updating an instrument\n\n1. Edit the definition JSON (e.g., change a preset value, add a control, update the MIDI range)\n2. Bump the `version` field\n3. Push to `main`\n4. Every outlet picks up the change within 5 minutes (or immediately on page refresh)\n\n## Version\n\n- Suite: v2.0.0\n- Platform Blueprint: v2.0.0\n- Definition Schema: v1.0.0\n\n## TizWildin FREE sample packs\n\n| Pack | Description |\n|------|-------------|\n| [**TizWildin-Aurora**](https://github.com/GareBear99/TizWildin-Aurora) | 3-segment original synth melody pack with loops, stems, demo renders, and neon/cinematic phrasing |\n| [**TizWildin-Obsidian**](https://github.com/GareBear99/TizWildin-Obsidian) | Dark cinematic sample pack with choir textures, menu loops, transitions, bass, atmosphere, drums, and electric-banjo extensions |\n| [**TizWildin-Skyline**](https://github.com/GareBear99/TizWildin-Skyline) | 30 BPM-tagged synthwave and darkwave loops with generator snapshot and dark neon additions |\n| [**TizWildin-Chroma**](https://github.com/GareBear99/TizWildin-Chroma) | Multi-segment game synthwave loop sample pack from TizWildin Entertainment |\n| [**TizWildin-Chime**](https://github.com/GareBear99/TizWildin-Chime) | Multi-part 88 BPM chime collection spanning glass, void, halo, reed, and neon synthwave lanes |\n| [**Free Violin Synth Sample Kit**](https://github.com/GareBear99/Free-Violin-Synth-Sample-Kit) | Physical-model violin sample kit rendered from the Instrudio violin instrument |\n| [**Free Dark Piano Sound Kit**](https://github.com/GareBear99/Free-Dark-Piano-Sound-Kit) | 88 piano notes + dark/cinematic loops and MIDI |\n| [**Free 808 Producer Kit**](https://github.com/GareBear99/Free-808-Producer-Kit) | 94 hand-crafted 808 bass samples tuned to every chromatic key |\n| [**Free Riser Producer Kit**](https://github.com/GareBear99/Free-Riser-Producer-Kit) | 115+ risers and 63 downlifters - noise, synth, drum, FX, cinematic |\n| [**Phonk Producer Toolkit**](https://github.com/GareBear99/Phonk_Producer_Toolkit) | Drift phonk starter kit - 808s, cowbells, drums, MIDI, templates |\n| [**Free Future Bass Producer Kit**](https://github.com/GareBear99/Free-Future-Bass-Producer-Kit) | Loops, fills, drums, bass, synths, pads, and FX |\n\n### Related audio projects\n- [**VF-PlexLab**](https://github.com/GareBear99/VF-PlexLab) - VocalForge PersonaPlex Lab starter repo for a JUCE plugin + local backend + HTML tester around NVIDIA PersonaPlex.\n- [**PAP-Forge-Audio**](https://github.com/GareBear99/PAP-Forge-Audio) - Procedural Autonomous Plugins runtime for generating, branching, validating, and restoring plugin projects from natural-language sound intent.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FGareBear99%2FInstrudio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FGareBear99%2FInstrudio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FGareBear99%2FInstrudio/lists"}