Gooey es un framework de interfaz de usuario acelerado por GPU escrito en el lenguaje de programación Zig. Permite desarrollar aplicaciones multiplataforma con renderizado gráfico de alto rendimiento, dirigiéndose a tres entornos: macOS mediante la API Metal, Linux a través de Vulkan con el protocolo Wayland, y navegadores web mediante WebAssembly y WebGPU. El proyecto se encuentra en fase temprana de desarrollo y su API todavía está evolucionando, según su repositorio en GitHub.
El framework combina dos paradigmas de interfaz: el modo inmediato y el modo retenido. Implementa un sistema de maquetación declarativo basado en componentes con primitivas ui. y un esquema tipo flexbox, lo que permite organizar los elementos de forma similar a los frameworks web. La separación entre estado y presentación se articula mediante un objeto Cx, que concentra el estado, los manejadores de eventos y el foco, y las primitivas ui., que definen la estructura visual. Sigue un patrón de estado puro que facilita las pruebas unitarias sin necesidad de instanciar la interfaz.
Entre sus características técnicas se incluyen un sistema de animaciones con funciones de easing, un sistema de entidades con creación y eliminación dinámica, widgets retenidos como campos de texto, áreas de texto, casillas de verificación y contenedores con scroll, y renderizado de texto mediante CoreText en macOS, FreeType y HarfBuzz en Linux, y Canvas en WebAssembly. Permite insertar shaders personalizados escritos en Metal o GLSL, gestionar operaciones de arrastrar y soltar con tipado seguro, aplicar efectos de tipo Liquid Glass en macOS 26.0 Tahoe, configurar atajos de teclado contextuales y cargar imágenes y archivos SVG. Incluye además diálogos nativos de apertura y guardado de archivos, soporte de portapapeles nativo, compatibilidad con métodos de entrada internacionales y accesibilidad para lectores de pantalla como VoiceOver, Orca y ARIA.
Gooey no declara dependencias externas en su archivo build.zig.zon: solo enlaza contra los frameworks del sistema en cada plataforma y las vinculaciones al runtime de Objective-C están incluidas en el árbol del proyecto. Requiere Zig 0.16.0 o superior; en macOS necesita la versión 12.0 o posterior, y en Linux un compositor Wayland con drivers Vulkan, FreeType, HarfBuzz, Fontconfig, libpng y D-Bus.
El repositorio contiene múltiples ejemplos ejecutables: una demostración principal, un contador, una aplicación de tareas, un temporizador Pomodoro, un editor de código con resaltado de sintaxis, una lista virtualizada con 10.000 elementos, una tabla virtualizada con 10.000 filas y un panel tipo salpicadero con un shader propio. El proyecto lo mantiene el usuario duanebester y dispone de un servidor de Discord para la comunidad.
