Build GUI apps with Rust

Build cross-platform, performant, accessible and unique apps with 🦀 Rust.

Sponsors

User avatar: User avatar: 高庆丰User avatar: Huddy BuddyUser avatar: Gabriel JõeUser avatar: Mark

Used by

Cross-platform

Freya brings the same Rust components and rendering model to desktop, mobile, and the browser. Platform-specific integrations can be added when your project needs them.

Linux

Desktop

Windows

Desktop

macOS

Desktop

Android

Experimental

Web

Experimental

Built-in Components

Built-in Components

Freya ships with a rich set of built-in components, from simple ones like Button, Switch, and Slider to more complex ones like VirtualScrollView, Calendar, and ColorPicker.

See the demo

Smooth Animations

Create transitions for colors, sizes, positions, and other visual properties. The animation APIs give you full control over timing, easing functions, and animation sequences.

Flexible Text editing

Flexible Text editing

Text editing capabilities that go beyond simple input fields. Build rich text editors with cursor management, text selection, keyboard shortcuts, custom formatting, and virtualization.

Code Editor

Code Editor

Create full-featured code editors with Rope-based text editing and tree-sitter syntax highlighting.

Advanced Plotting & Charts

Create charts, graphs, and interactive data visualizations directly within your application using the Plotters library integration.

Terminal Emulation

Terminal Emulation

Full PTY (pseudo-terminal) support for building integrated terminal applications, SSH clients, or development tools right inside your app.

Developer Tools

Developer Tools

Examine the component tree in real-time with built-in developer tools. Inspect properties, debug layouts, and understand your UI structure as you build.

Ready to get started?

Build cross-platform, native GUI applications with Rust and Skia.