diff --git a/README.md b/README.md index 5420ade22..0d0ba6e75 100644 --- a/README.md +++ b/README.md @@ -19,6 +19,14 @@ a strong focus on **education** and data-privacy. Please consider supporting thi --- +## Global Data Flow + +![Global data flow](assets/architecture/global-dataflow.svg) + +The diagram shows how data moves from the App through the Studio, Runtime and DSP layers before reaching storage. + +--- + ## Open-Source We are committed to transparency and community-driven development. diff --git a/assets/architecture/global-dataflow.drawio b/assets/architecture/global-dataflow.drawio new file mode 100644 index 000000000..e871b6e91 --- /dev/null +++ b/assets/architecture/global-dataflow.drawio @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/architecture/global-dataflow.svg b/assets/architecture/global-dataflow.svg new file mode 100644 index 000000000..88ae6f6c3 --- /dev/null +++ b/assets/architecture/global-dataflow.svg @@ -0,0 +1,22 @@ + + + + + + + + App + + Studio + + Runtime + + DSP + + Storage + + + + + + diff --git a/packages/app/studio/README.md b/packages/app/studio/README.md new file mode 100644 index 000000000..214b4871d --- /dev/null +++ b/packages/app/studio/README.md @@ -0,0 +1,8 @@ +# @opendaw/app-studio + +Main studio application for openDAW. + +![Global data flow](../../../assets/architecture/global-dataflow.svg) + +The diagram shows how data moves from the App through the Studio, Runtime and DSP layers before reaching storage. + diff --git a/packages/docs/docs-dev/architecture/audio-path.md b/packages/docs/docs-dev/architecture/audio-path.md index 34ac6fcdc..e6f5c6d1e 100644 --- a/packages/docs/docs-dev/architecture/audio-path.md +++ b/packages/docs/docs-dev/architecture/audio-path.md @@ -2,6 +2,10 @@ The sequence below shows how audio events travel through the system. +![Global data flow](../../../../assets/architecture/global-dataflow.svg) + +The diagram shows how data moves from the App through the Studio, Runtime and DSP layers before reaching storage. + ```mermaid sequenceDiagram participant User diff --git a/packages/docs/docs-dev/architecture/overview.md b/packages/docs/docs-dev/architecture/overview.md index 9b48dcd08..43f5b281a 100644 --- a/packages/docs/docs-dev/architecture/overview.md +++ b/packages/docs/docs-dev/architecture/overview.md @@ -2,6 +2,10 @@ The architecture of openDAW is described using the C4 model. +![Global data flow](../../../../assets/architecture/global-dataflow.svg) + +The diagram shows how data moves from the App through the Studio, Runtime and DSP layers before reaching storage. + ## Context ```mermaid diff --git a/packages/docs/docs-learn/how-it-works/storage-model.md b/packages/docs/docs-learn/how-it-works/storage-model.md index 7546dfa20..215df98e2 100644 --- a/packages/docs/docs-learn/how-it-works/storage-model.md +++ b/packages/docs/docs-learn/how-it-works/storage-model.md @@ -6,6 +6,10 @@ OPFS provides a sandboxed, persistent file system that is not visible to the user's operating system. It allows the application to save audio files and project state without requiring a network connection. +![Global data flow](../../../../assets/architecture/global-dataflow.svg) + +The diagram shows how data moves from the App through the Studio, Runtime and DSP layers before reaching storage. + ```mermaid flowchart LR A[Project Data] --> B[OPFS] diff --git a/packages/docs/docs-user/features/mixer.md b/packages/docs/docs-user/features/mixer.md index 6d225aa4f..80ec9256b 100644 --- a/packages/docs/docs-user/features/mixer.md +++ b/packages/docs/docs-user/features/mixer.md @@ -2,6 +2,10 @@ Control levels and routing between tracks and devices. +![Global data flow](../../../../assets/architecture/global-dataflow.svg) + +The diagram shows how data moves from the App through the Studio, Runtime and DSP layers before reaching storage. + ## Channel strips Each track is represented by a channel strip containing controls for volume, diff --git a/packages/docs/docs-user/workflows/export-share.md b/packages/docs/docs-user/workflows/export-share.md index 85ac3bb96..cbaccc4ae 100644 --- a/packages/docs/docs-user/workflows/export-share.md +++ b/packages/docs/docs-user/workflows/export-share.md @@ -2,6 +2,10 @@ Share your music outside of openDAW by rendering audio or packaging the project. +![Global data flow](../../../../assets/architecture/global-dataflow.svg) + +The diagram shows how data moves from the App through the Studio, Runtime and DSP layers before reaching storage. + 1. **Finalize your mix.** Balance tracks and stop playback where you want the export to end. 2. **Open the export dialog.** From the main menu choose _File → Export_. 3. **Pick an option.** Select _Audio Mixdown_ to render a WAV/MP3 or _Project Bundle_ to create an `.odb` file. diff --git a/packages/lib/dsp/README.md b/packages/lib/dsp/README.md index 8d39ab15b..4e556c819 100644 --- a/packages/lib/dsp/README.md +++ b/packages/lib/dsp/README.md @@ -4,6 +4,10 @@ _This package is part of the openDAW SDK_ Digital Signal Processing utilities and audio processing functions for TypeScript projects. +![Global data flow](../../../assets/architecture/global-dataflow.svg) + +The diagram shows how data moves from the App through the Studio, Runtime and DSP layers before reaching storage. + ## Core Audio Processing * **fft.ts** - Fast Fourier Transform implementations @@ -45,4 +49,4 @@ Digital Signal Processing utilities and audio processing functions for TypeScrip ## Utilities * **utils.ts** - General DSP utility functions -* **global-console.d.ts** - Global console type definitions \ No newline at end of file +* **global-console.d.ts** - Global console type definitions diff --git a/packages/lib/runtime/README.md b/packages/lib/runtime/README.md index af4d54793..fa54f9be9 100644 --- a/packages/lib/runtime/README.md +++ b/packages/lib/runtime/README.md @@ -4,6 +4,10 @@ _This package is part of the openDAW SDK_ Runtime utilities and asynchronous operations for TypeScript projects. +![Global data flow](../../../assets/architecture/global-dataflow.svg) + +The diagram shows how data moves from the App through the Studio, Runtime and DSP layers before reaching storage. + ## Async & Promises * **promises.ts** - Promise utilities and async operation helpers @@ -20,4 +24,4 @@ Runtime utilities and asynchronous operations for TypeScript projects. ## Time & Performance * **timespan.ts** - Time span calculations and utilities -* **stopwatch.ts** - Performance timing and measurement utilities \ No newline at end of file +* **stopwatch.ts** - Performance timing and measurement utilities diff --git a/packages/studio/core/README.md b/packages/studio/core/README.md index 566256b92..69fc565b0 100644 --- a/packages/studio/core/README.md +++ b/packages/studio/core/README.md @@ -1 +1,8 @@ -This package is part of the openDAW SDK \ No newline at end of file +# @opendaw/studio-core + +This package is part of the openDAW SDK. + +![Global data flow](../../../assets/architecture/global-dataflow.svg) + +The diagram shows how data moves from the App through the Studio, Runtime and DSP layers before reaching storage. +