FLOWDAW is a hip-hop-first desktop DAW built around one principle: remove technical friction without removing creative control.
Phase 0 through Phase 10 are complete. Phase 11 (UI/UX & Productization) is now in progress, starting with the design-system and application-shell architecture.
The production desktop path is now the JUCE 9.0.2 Studio. The original X11 shell remains source-available only as an explicit legacy regression/bootstrap target.
- C++20 domain/audio core separated from UI/device/plugin backends.
- 960 PPQ musical clock and versioned non-destructive
.flowprojects with backward loading through v1. - Arrangement editing for audio and Pattern blocks with stable multi-selection, grouped Delete, horizontal navigation, zoom, 1/16 snapping, Alt-drag free placement, manipulation feedback and Undo/Redo.
- 16/32/64-step drum sequencer with native FLOW drums, Velocity, Probability, Microtiming, lane Volume/Pan/Mute/Solo, Swing/Humanize, groove presets and keyboard step navigation/toggle/clear/duplicate.
- Smart Sampling with WAV import, BPM/beat-grid analysis, Equal/Auto/Beat/Bar Chop, editable slices, multi-bank pads, Rename/Gain/Pan/Choke, keyboard performance and non-destructive Match BPM.
- REC CHOPS with persistent performances, 1/8–1/32 grids, Quantize 0–100%, Humanize 0–100% and Reset Feel.
- Piano Roll with bounded multi-selection, grouped Delete/nudge/velocity/length edits, note add/move/resize, 1/8–1/32 grid, root/scale guidance, keyboard preview and octave navigation.
- Native FLOW Keys, FLOW 808, FLOW Bass and FLOW Lead with gain, pan, envelope, tone, Drive and tempo-aware Delay.
- Realtime-safe audio recording, input monitoring, persistent takes and active-take selection.
- Mixer with explicit Track/Bus/Master active targets, route metering, primary output routing, sends with gain/pre-post controls and synchronized plugin-rack targets.
- Realtime Track/Bus/Master plugin graph with topology-aware plugin delay compensation.
- Callback-safe sample peak, RMS and 4x inter-sample true-peak estimates for Track/Bus/Master routes.
- Real VST3 execution through JUCE on Linux/Windows/macOS and AU runtime validation on macOS, with searchable All/Instrument/Effect plugin selection.
- Persistent Track/Bus/Master plugin racks with FLOW Gain/Soft Clip/Width, enabled/bypass, wet mix, insert reordering, native parameters and external-plugin editor state roundtrip.
- External instrument slots driven by Pattern MIDI before Track inserts.
- Realtime/offline routing parity, master WAV export and per-track stem export through the production PluginHost.
- Production Assistant, Project Health and explicit Undoable workflow commands.
- Machine-local audio/plugin settings, crash recovery/autosave infrastructure, plugin quarantine, and a Sample Browser with Favorites/Recent, search, asynchronous preview, Auto Preview and keyboard navigation.
flowdaw-doctorfor runtime status, recovery and plugin-quarantine maintenance.- New sessions start with a usable native beat plus a FLOW Keys melodic Pattern.
- Cross-platform CI validates Linux, Windows and macOS production builds; Windows creates a portable ZIP and macOS creates a DMG.
Project format is currently v11.
JUCE 9.0.2 is pinned and fetched by default for the production build:
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo
cmake --build build --parallel 2 --target flowdaw-juce flowdaw-doctor
ctest --test-dir build --output-on-failureThe installed JUCE application is named FLOWDAW.
Package the production build on Linux:
cmake --install build --prefix ./install
cd build
cpack -G TGZWindows ZIP and macOS DMG generation are validated in CI.
JUCE modules are distributed under JUCE's upstream licensing terms. Commercial distribution requires an applicable JUCE licence and compliance with its terms.
The domain/audio core remains toolkit-independent. Because JUCE is enabled by default for production builds, disable it explicitly for a core-only build:
cmake -S . -B build-core -G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DFLOWDAW_BUILD_APP=OFF \
-DFLOWDAW_BUILD_TESTS=ON \
-DFLOWDAW_ENABLE_JUCE_RUNTIME=OFF \
-DFLOWDAW_FETCH_JUCE=OFF
cmake --build build-core --parallel
ctest --test-dir build-core --output-on-failure
./build-core/flowdaw-doctor statusThe X11 bootstrap is not the production Studio and is disabled by default. It remains available for regression/bootstrap coverage:
cmake -S . -B build-x11 -G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DFLOWDAW_BUILD_APP=ON \
-DFLOWDAW_BUILD_TESTS=OFF \
-DFLOWDAW_ENABLE_JUCE_RUNTIME=OFF \
-DFLOWDAW_FETCH_JUCE=OFF
cmake --build build-x11 --parallel --target flowdaw flowdaw-doctor
./build-x11/flowdawCI keeps this legacy target smoke-tested while JUCE remains the single production desktop path.
flowdaw-doctor status
flowdaw-doctor recover recovered.flow
flowdaw-doctor clear-recovery
flowdaw-doctor clear-quarantine <plugin-id>cmake --build build-core --target flowdaw_stretch_benchmark
./build-core/flowdaw_stretch_benchmarkSee:
ARCHITECTURE.mdAUDIO_ENGINE.mdPROJECT_FORMAT.mdROADMAP.mdPHASE1_STATUS.mdthroughPHASE11_STATUS.mdPHASE10_AUDIT.md— Phase 10 architecture/realtime/project-compatibility closure auditdocs/PRODUCTION_GOLDEN_PATH.md— manual installed-app acceptance flow from starter project through exportdocs/TIME_STRETCH_EVALUATION.md