Alternative GUI/UI Tools


#1

Is there anyone out there prototyping, or using other frameworks other than Juce for their UI design? As a producer (non developer), I’m finding the GUI portion to take the most time when developing apps. There are tools like PaintCode, JavaScript Canvas, and tools like QT have very feature rich and flexible GUI programming tools.

More specifically and to be blunt, I want the graphics guys to handle the GUI side with minimal code and drag and drop-able abilities, while I let the devs handle the programming side. We all know you devs hate GUI stuff :slight_smile:

Anyone using other frameworks for the GUI, while using the Juce classes.


#2

In my current app I use a sort of custom-rigged setup with sketch.

The UI guys make a sketch file, then I export the coordinates for the various UI elements as JSON. I can then load that layout into the app.

My app consists of a set of various views that mostly have standardized components, so we are able to generate the entirety of the UI dynamically through JSON that creates and positions components as necessary. It works very well, but it took a bit of time to set up. I hope JUCE at some point supports XML or JSON UI layouts.

Previously I was using React Native. I loved it and will surely use it again — it was very simple to even use custom JUCE components within Javascript & React Native, plus it is familiar to anyone who does web UIs.


#3

Thanks for the respnse. We are trying to speed up our GUI creations as well.

@cpenny Why did you stop using React Native? This seems like a good alternative with Juce?

Also, what Sketch plugin are you using to export as JSON or is it just manual?


#4

@MIDIculous watch this space, things are going to get even better for JUCE + React Native soon… :wink:

For desktop apps/plugins, @cpenny’s approach sounds great - if there is any code that can be shared I’m sure it would be appreciated by the community.


#5

@adamski Awesome!!! This can’t come fast enough. I hope FlexBox is in the roadmap as well.


#6

FlexBox has been in JUCE for a while now… https://docs.juce.com/master/classFlexBox.html


#7

I only stopped using react native because I switched companies, lol.

I will definitely use it again - my current project is a traditional JUCE GUI just for prototyping - we didn’t want to add extra dependencies or extra work for something that is just transitionary anyway. We are switching to Unity soon (with JUCE & our code as a dll) because we have some heavy 3D graphics and a game engine seems like the best choice for that.


#8

My custom sketch routines are pretty tightly coupled with our specific project, but I’ve been wanting to make a JUCE sketch plugin for a while… may actually start it now.


#9

OMG if you do that…that would be amazing!!!


#10

100% agree on having a sketch plugin that at least generates scalable components based on the Sketch elements. One thing that does need fixing for this to work is JUCE’s svg parsing by adding support for basic shadow types that designers use all the time in Sketch.


#11

@Gav Juce doesn’t support basic SVG Shadows?


#12

no, not from what I can see. You could render out the shadows as a png and overlay the svg by hand, but that breaks the exporting of a single svg element in Sketch and I’d imagine would cause push back from design. Also pngs for shadows mean that they start to look weird when you scale the interface, especially if overlaid and thus contrasted with the sharp svg scaled elements.


#13

@adamski How soon we talking :)?