Skip to content

Repository files navigation

ShallowHost

A native Windows host for real-time audio processing with VST2 and VST3 plug-ins.

GitHub Stars Release License CI

ShallowHost processes microphone or other audio input through a configurable plug-in chain. It is inspired by LightHost, with a new interface built in Rust and GPUI and an audio engine based on JUCE 9.

✨ Features

  • VST2/VST3 scanning, native plug-in editors, bypass controls, and drag-and-drop chain ordering
  • Windows Audio and ASIO with channel selection, mono/stereo routing, and level meters
  • Persistent configuration, plug-in cache, and chain state stored beside the executable
  • Tray integration, autostart, themes, Russian and English localization, and signed updates

📦 Installation

Download the latest package from GitHub Releases:

  • .msi — regular Windows installation with automatic update support
  • .zip — portable version

The Windows C runtime is linked statically, so no additional redistributable is required.

ShallowHost stores its runtime data beside ShallowHost.exe:

config.toml
cache/
├── plugins.xml
└── chain.json

📸 Screenshots

ShallowHost main page

ShallowHost plug-ins page

🏗️ Architecture

The GPUI application communicates with the JUCE audio engine through a safe Rust facade and a cxx bridge.

GPUI application (Rust)
        │
safe engine facade
        │
   cxx bridge
        │
JUCE AudioProcessorGraph (C++)

The main source directories are:

  • src/domain/ — application data and preferences
  • src/infrastructure/ — persistence, updates, Windows integration, and the audio-engine facade
  • src/locales/ — compile-time application translations
  • src/ui/ — shared controls, application shell, state, and pages
  • cpp/ — JUCE audio engine and plug-in hosting
  • assets/ — icons, fonts, and other application resources
  • tooling/ — build tasks, installer definitions, and patched external dependencies

Legacy VST2 hosting uses the BSD-licensed clean-room interface from Xaymar/vst2sdk; the discontinued Steinberg VST2 SDK is not included.

🚀 Development

Requirements:

  • Windows 10 or 11
  • stable Rust toolchain
  • Visual Studio Build Tools with the MSVC C++ workload
  • CMake, Git, and Just
  • watchexec for automatic restart during development
git clone https://github.com/Noktomezo/ShallowHost.git
cd ShallowHost
just check
just dev

Useful commands:

Command Purpose
just dev Run the development build with automatic restart
just build Build the optimized portable application
just strict Run checks, tests, Clippy, and formatting
just clean Remove Cargo build artifacts

JUCE is loaded from tooling/vendor/juce when available. Otherwise CMake downloads the pinned version during configuration.

🙏 Acknowledgments

LightHost, GPUI, JUCE, gpui-updater, and the Flexoki palette.

ShallowHost is distributed under the MIT license.

Releases

Packages

Contributors

Languages