Skip to content

project-blinc/Blinc

Repository files navigation

Blinc

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

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 DemosTry 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 — no separate codebase.

Platform Support

Platform Status Backend
macOS Stable wgpu (Metal)
Windows Stable wgpu (DX12/Vulkan)
Linux Stable wgpu (Vulkan)
Android Stable wgpu (Vulkan)
iOS Stable wgpu (Metal)
Web (WASM) Preview wgpu (WebGPU) — Chrome 113+, Edge 113+, Firefox 141+, Safari 18+ (macOS Tahoe)
HarmonyOS In progress wgpu (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

Crate Description
Core blinc_app App framework, windowed + web runners
blinc_core Signals, state machines, types
blinc_layout Flexbox layout, element builders, widgets
blinc_gpu SDF rendering, glass, shaders
Rendering blinc_text Text shaping, glyph atlas
blinc_svg SVG parsing + rasterization
blinc_image Image decoding, lazy loading
blinc_paint Canvas/paint API
Animation blinc_animation Springs, keyframes, timelines
blinc_theme Design tokens, light/dark mode
Components blinc_cn 40+ shadcn/ui-style components
blinc_icons Lucide icon set
Platform blinc_platform Cross-platform traits
blinc_platform_desktop Desktop (winit)
blinc_platform_android Android (NDK)
blinc_platform_ios iOS (UIKit/Metal)
blinc_platform_web Web (WebGPU/WASM)

Roadmap

See ROADMAP.md for detailed milestones. Current focus:

  1. Missing widgets (date/time/color picker, data grid)
  2. Zyntax DSL — .blinc file syntax compiled to Rust
  3. Accessibility (screen reader, keyboard navigation)
  4. Developer tooling (hot reload, visual inspector)

License

Apache License 2.0 — see LICENSE

About

A declarative, reactive UI system with first-class state machines, spring physics animations, and GPU-accelerated rendering

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

  •  

Packages

 
 
 

Contributors