Three days of work.
A complete desktop
audio editor.
Not a prototype — a non-destructive, real-time DAW with a live mixer, spectral analysis, time-stretch and recording. Written once, as a narrative. From that single source came the C++, its tests, and a 228-page book.
TDD says the test is the specification, and the code is derived. LDD says the narrative is the specification — and both the code and the tests are derived from it.
Starts muted — use the volume control to enable sound
The narrative is the spec
You write intent as prose and name the pieces. The model fills a specification that stays versioned in the source — it never guesses a design.
Code and tests, both derived
One .weft source tangles into the program and its test suite, and weaves into a typeset book. Spec, code, tests and docs are one object.
The Prime Directive
A task isn't done until its prose is updated. Code and narrative can never drift — a mismatch is a failing build, not a stale comment.
Literate Driven Development is AI-assisted software authorship, with Literate Programming at its core. You write the reasoning once — and it becomes the shared context a person and a model both build from.
— literatedriven.com
A real DAW, not a demo.
Every capability below is built, tested, and running on the desktop — a professional signal engine underneath a Qt interface.
Non-destructive by design
Sources are immutable; a cut or a fade is an operation, never a lost sample. Unlimited undo, versioning and recovery — by construction.
32-bit float, sample-accurate
Float audio with exact timing is the internal currency of the whole engine — from decode to mixer to export.
Real-time-safe engine
The audio callback never allocates, locks or does I/O. No dropouts — the real-time discipline is enforced, not hoped for.
One graph, two renderers
Real-time playback and offline export drive the same signal graph — bit-identical, so what you hear is what you bounce.
A live mixer
Pan, gain, mute and solo — heard the instant you move them, because playback streams the project block by block.
Automation
Draw a gain envelope on a track; the fader moves itself as it plays — and it's saved with the project.
Spectrum & spectrogram
A live FFT analyser over a scrolling waterfall — the frequency-domain view that makes it an editor, not just a recorder.
Time-stretch & restoration
Stretch, pitch-shift and de-click — spectral processing that reshapes time without moving a file.
Recording & plugins
Capture from the input straight onto the timeline, and host processors through an internal plugin API.
Write it once. Derive everything.
.weft narrative
Prose that explains the why, with the code and tests woven in — the only file anyone edits.
C++ + 18 test suites
Compiled with -Wall -Wextra -Werror, all green.
A 228-page book
Typeset PDF with Bauhaus covers, glossary and bibliography.
There is no design doc that rots and no code with stale comments. There is one narrative, and everything else is derived from it by weft. Reading the book is reading the system.
Three days. Every stage green.
Figures from the project's git history and the session's own cost meter. The build spanned three working days; the dollar figure is one measured session, dominated by cached-context reads.
Read the reasoning.
Run the software.
A non-destructive, verifiable audio engine and a desktop editor — one literate narrative, from which the code, its tests, and this book are all derived. Part of Literate Driven Development, Volume 2.