YUP is approaching V1!

YUP V1 is nearly here. From the ashes of JUCE7, one ISC licensed powerhouse framework running everywhere (Android, iOS, macOS, Win, Linux, WASM) with GPU backends for Metal, D3D, and OpenGL, plus a fresh build system. It’s been quite the journey! Still pre‑release, but I’m too hyped not to shout about it now.

Here’s what matters most:


:artist_palette: GFX

Unified rendering with offscreen GPU targets topping at 60 FPS, full SVG 1.1, a robust Path API, advanced color/gradient controls, and a pluggable image I/O system covering PNG, JPEG, WebP, BMP, PPM, and animated GIFs.


:desktop_computer: UI

A fully skinnable component library (PopupMenu, ComboBox, FileChooser, TextEditor, Label) with variable font support, clipboard, paint profiler (p50/p95/p99), plus dedicated audio widgets: MIDI keyboard, filter response, spectrum analyser, and oscilloscope.


:clapper_board: ANIMATION

Lottie‑compatible player loading .json/.lottie files: supports looping, speed/direction control, expression evaluation, and export to frame sequences or animated GIFs, while rendering directly on the GPU.

yup_lottie


:electric_plug: PLUGINS (Clients & Hosts)

Native support for VST3, AU, and CLAP, plus standalone app generation, complete with validator support in the build system. Scanning and hosting them too.


:control_knobs: AUDIO GRAPH

Read/write all major formats (WAV, MP3, FLAC, AAC, Opus, CoreAudio, WMF) and integrate with WASM AudioWorklet. The multi-threaded audio graph handles routing, processing, and real‑time playback with low‑latency precision and PDC baked in.


:abacus: DSP

A full‑fat signal processing suite: FFT, IIR/Linkwitz‑Riley/FIR filters, partitioned convolution, oversamplers, virtual analog filters (Moog, Roland, Korg35), spectral processors, onset detectors, time/frequency stretching, and distortion units.


Under the hood:

UndoManager with transactions, hierarchical DataTree with XPath like querying and schema validation, SIMD vectorisation, Python bindings, SQLite, Perfetto profiling, and a file‑watching utility. And much much more (all with image coverage).


See the full changelog yup/CHANGELOG.md at 8b00a923a4df89e703544e334f72c4b1863c9687 · kunitoki/yup · GitHub

11 Likes

This is great ! I’ve following the project from far away, glad to see it’s getting there. I’m curious if you’re planning to get data binding or if it’s already there ?

1 Like

Now YOLO merge this all into JUCE 9, thanks!

1 Like

FWIW, the biggest nuisances for JUCE 9 for me are the lacking image codecs and lack of animated image codec support. These are such basic things for a framework to support in this age. We seriously need first class support for WebP, BMP, and GIF animations. None of this is news.

Cool to see this set of features grow elsewhere! But it doesn’t help sell JUCE when it can’t cover the basics in this day and age.

2 Likes

Add a FR and let people vote on it :wink:

I did this in bloody 2019: FR: Support more image formats

Not sure what else I need to do here? Is it up to me to advertise FRs or something?

FRs are basically a graveyard.

3 Likes

yeah, that’s why I added a winky face - sorry…

1 Like