dhwani 0.1.1

A real-time audio processing engine for DAWs
Documentation

# Dhwani

**Dhwani** is a real-time node based audio engine for Digital Audio Workstations (DAWs), written in Rust and designed for low-latency sound processing. It focuses on performance, modular DSP building blocks, and efficient I/O for modern audio applications. The engine is built to power synthesizers, mixers, effects chains, and full DAW backends while maintaining Rust’s guarantees for safety and concurrency.

## Meaning

**Dhwani** (Malayalam: ധ്വനി) means **sound**. The word is used across multiple Indian languages including Malayalam, Hindi, Kannada, Telugu, and Marathi.

## Goals

- Real-time safe audio processing
- Modular DSP graph
- Lock-free audio paths
- DAW and synth friendly architecture

## Use cases

- DAW audio engine backend
- Software synthesizers
- Audio effects processors
- Embedded audio systems
- Real-time DSP experimentation

## Folder structure and main files

```text
├── core/              # Dhwani core engine source files
├── core/build_scripts # Library build scripts used by build.rs
├── core/example       # Library example source files
├── core/src           # Library source files
├── daw/               # A miniman DAW GUI application built using Tauri
├── daw/frontend       # Tauri frontend
├── daw/src            # Tauri backend; TS + React source files
├── dhwani.sh          # A helper script file
└── README.md          # This file
```

## Requirements

- cargo
- npm for running DAW GUI application
- tauri cli for npm and cargo (see [Tauri manual setup]https://v2.tauri.app/start/create-project/#manual-setup-tauri-cli)
- run `cd daw/frontend && npm i` before running DAW GUI app

## Example usage

A helper script is provided to run specific target

```text
- `./dhwani.sh test`   # Run tests
- `./dhwani.sh doc`    # Build rust docs
- `./dhwani.sh daw`    # Run minima DAW GUI app
- `./dhwani.sh gui`    # Run a gui example from core crate
- `./dhwani.sh simple` # Run a simpe example from core crate
```

## License

Licensed under either of [Apache License, Version
2.0](LICENSE-APACHE) or [MIT license](LICENSE-MIT) at your option.

Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in this crate by you, as defined in the Apache-2.0 license, shall
be dual licensed as above, without any additional terms or conditions.

## Third-Party Assets

### [C Major 9 Bossa Nova Guitar](core/examples/giomilko-c-major-9-bossa-nova-guitar.wav)
- Author: [GioMilko](https://freesound.org/people/GioMilko/)
- Source: https://freesound.org/people/GioMilko/sounds/344211/
- License: CC BY 4.0