Awesome
<div alt style="text-align: center; transform: scale(.5);"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://github.com/dan-german/blocks/blob/main/packaging/background.png?raw=true" /> <img alt="tldraw" src="https://github.com/dan-german/blocks/blob/main/packaging/background.png?raw=true" /> </picture> </div> <div align="center"> <a href="https://mixpanel.com/p/Ky9V6ZTYJY1RDsLxBeAe1T"><img src="https://img.shields.io/badge/Mixpanel-8A2BE2"/></a> <a href="https://www.figma.com/file/8SCZaOWGcwhH1PJ5ShqgDg/blocks?type=design&node-id=0%3A1&mode=design&t=GPIl0DrebSVFOv1Q-1"><img src="https://img.shields.io/badge/Figma-FF4E4E"/></a> <a href="https://discord.gg/MjkFj859vW"><img src="https://img.shields.io/badge/Discord-5A67EE"/></a> <a href="https://www.soonth.com"><img src="https://img.shields.io/badge/Download-AAFF00"/></a> <br></br>blocks is a modular synthesizer available as standalone, VST3 & AU for Windows, macOS & Linux.
</div>How to build
Download CMake
Clone the repo
git clone https://github.com/dan-german/blocks
Change to project directory
cd blocks
Populate JUCE
git submodule update --init
Then build with CMake
cmake -Bbuild -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release
This will result in a release build in the build directory.
For more detailed instructions please refer to the JUCE CMake API
How to use
At the center lies the block grid, where you can add sound sources and effects. Sound flows downwards, meaning any effect will shape the sound sources above it.
To the right stands the modulators menu, a space for adding LFOs and envelopes; And to the left you'll find the the modulation matrix, which controls connections between modulators and blocks.
Tabs, placed above the block grid, control which column of blocks activates when a note is played.
Architecture
<img src="./packaging/uml.svg" width="100%">Contributing
If you're interested in contributing, join our discord channel!