yup! github
esc
search everything on yup.readthedocs.io

releases

What each version brings. The full list of changes is in the changelog, and tags and source archives are on GitHub releases.

2.0.02026-11-06

github release

YUP goes 3D, gets its own JIT-compiled DSP language and a portable GPU layer, and its interface becomes touch-first with a much larger widget set.

3D

  • A new 3D module: scenes built as a small entity-component system, scenes with prefabs and glTF 2.0 model loading.
  • A new renderer with two tiers: a forward raster tier that runs everywhere, and a full tier with HDR, temporal anti-aliasing and deferred shading with any number of lights.
  • Cascaded sun shadows, soft point and spot shadows, contact shadows, ambient occlusion, screen-space reflections, reflection probes and irradiance volumes.
  • Depth of field with a physical camera, motion blur, height fog, bloom, ACES and AgX tone mapping, and temporal upscaling.
  • Picking with rays, per-frame GPU statistics and debug views for depth, normals, motion and materials.
  • Render 3D objects inside 2D Components, map 2D Components onto 3D surfaces.

GPU

  • A new RHI module: render and compute pipelines, buffers, textures, samplers and depth targets on Metal, Direct3D 11, OpenGL, WebGPU and Vulkan.
  • Vulkan is a new backend, and the default on Android. On macOS, rendering is Metal only.
  • Compute shaders on Metal, Direct3D 11, OpenGL, Vulkan and WebGPU, with a GPU audio processing demo.
  • Write shaders once in GLSL: they compile to MSL, HLSL, GLSL ES, SPIR-V and WGSL, and ship as compressed shader bundles built with your project.
  • WebGPU is now the default renderer in the browser.
  • Components can be cached to textures and use shader effects with mouse warping.

YDSP

  • YDSP is a new real-time DSP language compiled at runtime to native ARM64 and x86-64 code, and to WebAssembly SIMD in the browser.
  • Processors and graphs combine Faust-style composition with Cmajor-style definitions: voice banks, MIDI and MPE events, oversampling and undersampling, automatic delay compensation and parameter smoothing.
  • An optimizing compiler with vectorization, fused math and bounds checks that cost nothing when they can be proven safe.
  • Projects and precompiled bundles, a command line compiler and player with hot reload, and a VS Code extension.
  • The graphics example plays a collection of YDSP synths, from electric piano to drums.

Graphics

  • Color emoji in every text, Unicode line breaking, and a monospace font in the default theme.
  • Image meshes for warping and instanced sprites, clipping to strokes, layer masks, additive blending and inside or outside strokes.
  • TIFF, TGA, animated PNG and animated WebP images, with metadata.
  • Rive updated, with grid layout, scripted files, ViewModel data binding and full input on artboards.
  • Lottie gains merge paths and better mattes, precompositions and expressions.

Interface

  • Multitouch everywhere, and gestures: tap, double tap, long press, pinch, rotate, pan and swipe.
  • New widgets: tabs, tree views, a touch-first list box with fling scrolling, and a code editor with syntax highlighting.
  • Themes from a palette: give it any colors and the whole app recolors at runtime, in dark or light mode.
  • Drag and drop that carries any data and can leave the app, plus primary selection and any data on the clipboard.
  • Mobile apps keep their content clear of notches and system bars, and Windows and Linux scale with high density displays.
  • FlexBox and Grid layouts that follow the CSS rules, with named areas, gaps, padding and auto margins.
  • Transforms apply to whole component trees.
  • Windows can be transparent, always on top or unfocusable (desktop).
  • Every window renders on its own thread, paced to its display's refresh rate.

Audio

  • New oscillators and filters: a spectral Prism oscillator, band-limited modulated oscillators with FM and phase distortion, a virtual analog state variable filter and an LFO.
  • Halfband and faster sinc oversamplers, double precision FFTs and tuning maps for any scale.
  • Sidechains and multiple buses in every plugin format.
  • Web MIDI in the browser, pitch and mod wheels, and a multitouch MIDI keyboard.
  • Retrace, a complete synthesizer, is the new plugin example: drawn wavetables, unison, an effects chain, microtuning, a preset browser and an MCP server for AI assistants.

AI

  • A new AI module: chat clients for OpenAI, Anthropic, Gemini and compatible servers, with streaming, tool calling and structured output.
  • Embeddings, and Model Context Protocol clients and servers.

Core and tools

  • YAML, signals with scoped connections, cancellation tokens and timers precise to below a millisecond.
  • Security hardening across strings, XML, JSON, YAML, archives, zip files, networking and file permissions, plus a cryptographic random generator.
  • Much wider Python bindings, including the GPU layer, layouts and AI.
  • Bundled resources and app icons in the build, Android 16 KB page support, and building the tests of selected modules only.

This is a major release with breaking changes. The changelog lists each one and how to migrate.

1.0.02026-07-03

github release

The first release of YUP: one C++ codebase for apps and audio plugins, painted on the GPU, running on desktop, mobile and the web.

Everywhere

  • Windows, macOS, Linux, iOS, Android and the browser, built from the same sources.
  • In the browser, audio runs in an AudioWorklet and apps can use threads, with a file system to read and write.

Graphics

  • A GPU renderer on Metal, Direct3D and OpenGL, built on Rive: paths, gradients, strokes with soft edges and text.
  • SVG 1.1 drawing, and reading and writing PNG, JPEG, WebP, animated GIF, BMP and Netpbm images.
  • Offscreen rendering to images and textures, with group opacity layers.

Animation

  • A new animation module plays Lottie files: playback in both directions, loops, speed and seeking, with expressions.
  • Animations can be edited in code, saved back to Lottie, and exported as frames or as animated GIFs.

Audio

  • Build plugins as CLAP, VST3 and Audio Unit (AUv2), plus early AUv3, AAX and LV2. Plugins also run as standalone apps.
  • Host CLAP, VST3 and Audio Unit plugins inside your own app, and connect them in an audio graph.
  • Read and write WAV, FLAC, Opus, MP3 and AAC, with the native decoders on Apple platforms and Windows.
  • A DSP module: FFT, IIR and FIR filters, crossovers, virtual analog filters, convolution, oversampling, time stretching, spectral processing, onset detection and distortion.
  • MIDI 2.0 support through Universal MIDI Packets.

Interface

  • Themes for every widget, popup menus, combo boxes, text editors and labels, a native file chooser and the clipboard.
  • Audio widgets: a MIDI keyboard, filter response curves, a spectrum analyzer, a spectrogram and an oscilloscope.
  • Rive artboards inside the interface, driven by their state machines.
  • A paint profiler to see where each frame's time goes.

Data and tools

  • A data model for app state: an observable tree with transactions, undo, queries and schema validation.
  • SQLite databases, file watching, a JavaScript engine, SIMD math and Perfetto profiling.
  • Python bindings for YUP.

Build

  • CMake modules that pull in what they depend on, catch circular dependencies and set per platform options.
  • Plugin validation and code signing in the build, code coverage, and sharded test runs.

Plus many fixes across platforms, from a startup crash on custom scaled screens to thread safety in CoreAudio and the audio device manager.