Here’s what matters most:
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.
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.
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.
Native support for VST3, AU, and CLAP, plus standalone app generation, complete with validator support in the build system. Scanning and hosting them too.
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.
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 good coverage)
See the full changelog at https://github.com/kunitoki/yup/blob/main/CHANGELOG.md
