Home

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

Playthrough

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!