A lightweight, cross-platform open-source DAW in C++20 and JUCE 8 that follows the FL Studio workflow and can import .flp projects.
juce-framework/JUCE
Open-source C++ framework for building cross-platform desktop and mobile apps, including VST, AU, AAX and LV2 audio plug-ins and hosts.
- Stars
- 9,114
- Forks
- 2,226
- Open issues
- 486
- Last commit
- 21 hours ago
What is it?
JUCE is a C++ application framework for building desktop and mobile applications, with a particular focus on audio. It can produce VST, VST3, AU, AUv3, AAX and LV2 audio plug-ins as well as plug-in hosts, so developers can write one codebase and target several platforms and DAWs.
JUCE can be integrated into existing projects through CMake, or projects can be generated with the Projucer, JUCE's own configuration tool, which exports to Xcode, Visual Studio, Android Studio and Linux Makefiles. The framework is organized into modules, and the repository includes examples covering most features, plus a CMake examples directory with starting points for GUI apps, console apps and audio plug-ins.
JUCE is dual-licensed under AGPLv3 and a commercial licence. AAX plug-ins also require signing through Avid's PACE tools before they can run in commercial Pro Tools builds.
Key features
- 01Builds VST, VST3, AU, AUv3, AAX and LV2 audio plug-ins and hosts from one codebase.
- 02Targets macOS, iOS, Windows, Linux and Android.
- 03Integrates with CMake or generates projects via the Projucer.
- 04Ships with complete example applications and CMake starter templates.
- 05Provides an API documented through Doxygen comments in module headers.
Use cases
- Developing a commercial or open-source audio plug-in for multiple DAWs and formats.
- Building a cross-platform desktop application with a custom native GUI in C++.
- Creating a mobile audio app that runs on iOS and Android.
Quick start
- 1
Install CMake 3.22 or higher from your package manager or the official download page
- 2
Clone the JUCE repository and change into its directory
- 3
Configure the build with the examples and extras enabled
cmake . -B cmake-build -DJUCE_BUILD_EXAMPLES=ON -DJUCE_BUILD_EXTRAS=ON - 4
Build the DemoRunner target
cmake --build cmake-build --target DemoRunner
Things to know
- JUCE is dual-licensed under AGPLv3 or a commercial licence, so commercial use may require purchasing a licence.
- AAX plug-ins must be digitally signed with PACE tools before they run in commercially available Pro Tools.
- Building requires a C++17 toolchain and platform SDKs such as Xcode, Visual Studio or Android NDK 26.
In collections
Topics
FAQ
- What is JUCE?
- Open-source C++ framework for building cross-platform desktop and mobile apps, including VST, AU, AAX and LV2 audio plug-ins and hosts. JUCE is a C++ application framework for building desktop and mobile applications, with a particular focus on audio. It can produce VST, VST3, AU, AUv3, AAX and LV2 audio plug-ins as well as plug-in hosts, so developers can write one codebase and target several platforms and DAWs.
- Is JUCE free to use? What license does it have?
- JUCE is open source under the Other license. Check the license terms before using it in commercial products.
- Is JUCE still maintained?
- Actively maintained. The last commit to JUCE was on Nov 6, 2026.
- What can I use JUCE for?
- Developing a commercial or open-source audio plug-in for multiple DAWs and formats. Building a cross-platform desktop application with a custom native GUI in C++. Creating a mobile audio app that runs on iOS and Android.
- How do I install JUCE?
- Install CMake 3.22 or higher from your package manager or the official download page Clone the JUCE repository and change into its directory Configure the build with the examples and extras enabled: cmake . -B cmake-build -DJUCE_BUILD_EXAMPLES=ON -DJUCE_BUILD_EXTRAS=ON Build the DemoRunner target: cmake --build cmake-build --target DemoRunner
- Where can I get JUCE?
- The source code and installation instructions are on GitHub: https://github.com/juce-framework/JUCE
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
An experimental pattern-based DAW where one pattern can be edited in a tracker, piano roll or step grid, with CLAP and VST3 plugin support.
A free VST3 turntable-scratch instrument for FL Studio on Windows: place a note in the piano roll and it plays a DJ scratch phrase.
A cross-platform FFmpeg GUI for lossless cutting, trimming and remuxing of video and audio files without re-encoding.
A lightweight native Spotify desktop client in Rust that plays music locally and supports Spotify Connect on Linux, macOS, and Windows.
A Python library for audio processing, offering file I/O, built-in effects, and VST3/Audio Unit plugin hosting.