Operating System Compatibility
Build native applications and plug-ins that run on Windows, macOS, Linux, iOS and Android with a consistent user experience and a single codebase.
Plug-in Format Support
Create VST, VST3, AU, AUv3, AAX and LV2 plug-ins from a single codebase and host VST, VST3, AU, AUv3 and LV2 plug-ins in your own application.
Build System Integration
Include JUCE source files in your existing build system directly, via CMake, or via the Projucer.
Native Development Environments
Access the native software development tools on each platform and use debuggers, device simulators and existing software ecosystems.
Accessibility
Hook into the native accessibility controls on each platform by default to allowing users to interact with your software using familiar workflows.
Audio Processing
Focus on developing chains of audio effects, filters, generators and instruments without worrying about the underlying platform.
Rapid Audio Development
Use JUCE’s library of digital audio processing (DSP) building blocks to rapidly prototype and release products.
MIDI and MPE
Communicate with MIDI and MPE devices directly, or stream MIDI and MPE via digital audio workstations (DAWs).
Audio Random Access (ARA) Support
Access a more powerful plug-in API to create plug-ins like Celemony's Melodyne.
Audio File formats
Read and write AIFF, FLAC, MP3, Ogg Vorbis, WAV and Windows Media files.
Audio Device Manager & Multichannel Audio
Interact directly with any attached audio hardware and use the full breadth of channels available from both the hardware and the routing provided by plug-in hosts.
Multiple Threads and Processes
Harness the power of modern computing hardware with first class support for multiple threads and processes.
Native Event Loop
Dispatch and respond to messages on the native event loop of each platform.
Graphics Rendering
Draw vector graphics primitives to the screen using software, accelerated platform specific (CoreGrpahics), or OpenGL renderers.
Widget Library
Compose a hierarchy of pre-build widgets to add functionality to your software, including combo boxes, labels, sliders, buttons, tables, text editors, and trees.
Themes
Give a consistent user experience within and across multiple products using JUCE’s LookAndFeel classes to theme UI components.
Embed Native Windows
Use JUCE’s embedded windows to display specific operating system components within your software.
Image formats
Decode and encode PNG, JPEG, GIF and SVG image files within your software.
Grid & Flexbox
Dynamically arrange your JUCE GUI components using industry standard layout schemes.
Push Notifications
Customise notifications sent from your software to a user’s device.
Embedded Browser
Use an embedded browser to display local or remote web assets within your software.
OSC
Communicate with Open Sound Control (OSC) devices and software using JUCE’s OSC interface.
Javascript
Embed the Javascript scripting language language in your software to enable dynamic execution of code.
General Purpose Utilities
Read and write XML files, add logging functionality, use gzip and zip compression and decompression, use cryptography functions, navigate local file systems, construct web requests and communicate with other software and devices on a network.