I’m excited to share a project I’ve been working on for a while now!
Blueprint is a JUCE module for building native JUCE user interfaces using React.js. Think React Native, but instead of rendering to native platform components, Blueprint renders to plain old
juce::Component instances. That means that you can write your plugin or app UI in React.js, but ship an interface that’s just JUCE, and still use all the familiar features of JUCE that you’re used to.
There’s a lot to get into to explain how this works, but let me first start by sharing an example that I’m really excited about. My next plugin is now in beta, and the UI is completely written in React, including all the sliders, buttons, preset browser, etc. Screenshot below.
There’s more to say than I want to fit in this one post so here are some links:
- Example PluginEditor.cpp
- Introductory blog post
- Podcast announcement with The Audio Programmer:
Lastly, this project is still super young, and there’s a lot to do before it’s really stable or complete. Actual documentation will be coming soon, and I’d love to have your help, so if you want to get involved check out the Github issues or feel free to suggest ideas/feedback.
Let me know what you think!