Blinc

May 24, 2026 ยท View on GitHub

Build Status Rust Version Edition Crates.io License Blinc Book Live Demos Discord

Blinc UI

A GPU-accelerated, cross-platform UI framework for building desktop, mobile, and web applications from a single Rust codebase.

Highlights

  • GPU-Accelerated: SDF rendering, glassmorphism, spring physics, @flow custom shaders
  • Cross-Platform: Desktop (macOS/Windows/Linux), Android, iOS, Web (WebGPU)
  • Builder API: Declarative, chainable: div().flex_col().gap(16.0).child(text("Hello"))
  • 40+ Components: shadcn/ui-style library with CSS-overridable theming
  • 40+ Live Demos: Try them in your browser (WebGPU required)

Quick Start

use blinc_app::prelude::*;
use blinc_app::windowed::WindowedApp;

fn main() -> Result<()> {
    WindowedApp::run(WindowConfig::default(), |ctx| {
        div()
            .w(ctx.width).h(ctx.height)
            .bg(Color::rgb(0.1, 0.1, 0.15))
            .justify_center().items_center()
            .child(text("Hello Blinc!").size(48.0).color(Color::WHITE))
    })
}

The same build_ui function runs on desktop and web and no separate codebase.

Platform Support

PlatformStatusBackend
macOSStablewgpu (Metal)
WindowsStablewgpu (DX12/Vulkan)
LinuxStablewgpu (Vulkan)
AndroidStablewgpu (Vulkan)
iOSStablewgpu (Metal)
Web (WASM)Previewwgpu (WebGPU) โ€” Chrome 113+, Edge 113+, Firefox 141+, Safari 18+ (macOS Tahoe)
HarmonyOSIn progresswgpu (Vulkan/OpenGL ES)

Documentation

Blinc Book: comprehensive guide covering layout, styling, animation, widgets, routing, media, and more.

Live Example Gallery: 40+ interactive WebGPU demos running in your browser.

API Reference: rustdoc for all crates.

Skills.md: concise, example-driven reference for AI code agents.

Crates

CrateDescription
Coreblinc_appApp framework, windowed + web runners
blinc_coreSignals, state machines, types
blinc_layoutFlexbox layout, element builders, widgets
blinc_gpuSDF rendering, glass, shaders
Renderingblinc_textText shaping, glyph atlas
blinc_svgSVG parsing + rasterization
blinc_imageImage decoding, lazy loading
blinc_paintCanvas/paint API
Animationblinc_animationSprings, keyframes, timelines
blinc_themeDesign tokens, light/dark mode
Componentsblinc_cn40+ shadcn/ui-style components
blinc_iconsLucide icon set
Platformblinc_platformCross-platform traits
blinc_platform_desktopDesktop (winit)
blinc_platform_androidAndroid (NDK)
blinc_platform_iosiOS (UIKit/Metal)
blinc_platform_webWeb (WebGPU/WASM)

Roadmap

See ROADMAP.md for detailed milestones. Current focus:

  1. Missing widgets (date/time/color picker, data grid)
  2. Zyntax DSL: .blinc domain specific language for UI definitions, with support for live editing and hot reload in the future
  3. Accessibility (screen reader, keyboard navigation)
  4. Developer tooling (hot reload, visual inspector)

Community

Join us on Discord: questions, showcases, design discussion, and roadmap chatter. Also feel free to open a GitHub Discussion for longer-form conversations.

License

Apache License 2.0 - see LICENSE