[workspace]
members = [
"crates/phosphor-core",
"crates/phosphor-dsp",
"crates/phosphor-midi",
"crates/phosphor-plugin",
"crates/phosphor-app",
"crates/phosphor-tui",
"crates/phosphor-gui",
]
resolver = "2"
[workspace.package]
version = "0.3.21"
edition = "2021"
license = "MIT"
rust-version = "1.75"
repository = "https://github.com/joshjetson/phosphor"
homepage = "https://github.com/joshjetson/phosphor"
description = "A terminal-native DAW with built-in synthesizers and MIDI support"
keywords = ["daw", "audio", "synthesizer", "midi", "tui"]
categories = ["multimedia::audio", "command-line-utilities"]
[workspace.dependencies]
cpal = "0.15"
dasp = { version = "0.11", features = ["signal", "interpolate", "ring_buffer"] }
midir = "0.10"
wmidi = "4.0"
ringbuf = "0.4"
crossbeam-channel = "0.5"
ratatui = "0.29"
crossterm = "0.28"
eframe = "0.29"
egui = "0.29"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
anyhow = "1"
thiserror = "2"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
clap = { version = "4", features = ["derive"] }
criterion = { version = "0.5", features = ["html_reports"] }
proptest = "1"
assert_no_alloc = "1.1"
phosphor-app = { path = "crates/phosphor-app", version = "0.3.21" }
phosphor-core = { path = "crates/phosphor-core", version = "0.3.21" }
phosphor-dsp = { path = "crates/phosphor-dsp", version = "0.3.21" }
phosphor-midi = { path = "crates/phosphor-midi", version = "0.3.21" }
phosphor-plugin = { path = "crates/phosphor-plugin", version = "0.3.21" }
phosphor-tui = { path = "crates/phosphor-tui", version = "0.3.21" }
phosphor-gui = { path = "crates/phosphor-gui", version = "0.3.21" }
[package]
name = "phosphor-studio"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
homepage.workspace = true
description = "A terminal-native DAW with built-in synthesizers and MIDI support"
readme = "README.md"
keywords = ["daw", "audio", "synthesizer", "midi", "tui"]
categories = ["multimedia::audio", "command-line-utilities"]
[[bin]]
name = "phosphor"
path = "src/main.rs"
[dependencies]
phosphor-core.workspace = true
phosphor-tui.workspace = true
phosphor-gui.workspace = true
clap.workspace = true
anyhow.workspace = true
tracing.workspace = true
tracing-subscriber.workspace = true