Fission
Menu
▾
Platform overview
Cross-platform apps
Static sites
Server-rendered sites
Terminal apps
Charts
Production lifecycle
Developer tools
Design systems
Blog
Setup
Learn
Build
Test
Publish
Product
▾
Platform overview
Cross-platform apps
Static sites
Server-rendered sites
Terminal apps
Charts
Production lifecycle
Developer tools
Design systems
Blog
Setup
Learn
Build
Test
Publish
GitHub
Theme
Search
Cmd K
Design systems
Bring a real design system into Rust UI code.
Fission reads design system package JSON at build time and generates typed theme code for widgets, charts, shells, and product targets.
Read design guide
Theme docs
Design system
DSP JSON
tokens and components
Codegen
typed Rust theme
Runtime
Env selects active theme
Surfaces
widgets and charts
Platform
Apps
Terminal
Static sites
Server sites
Lifecycle
Dev tools
Design
Charts
Design integration
Tokens and component states become typed UI input.
Fission treats a design system as code-generated product infrastructure, not a blob of JSON that widgets parse while rendering.
DSP JSON
Bring your system
Read design system package JSON at build time and generate typed Rust theme structures.
Components
Variants and states
Apply sizes, variants, hover, active, focus, disabled, error, shadows, borders, typography, icon sizing, and dark/light behavior.
Charts
Visualization palette
Use generated data-visualization palettes so charts match the product design system.
Theme system
Design data flows from package JSON to Env.
The runtime should consume typed tokens for color, spacing, typography, components, charts, dark mode, and state-specific styling.
Build-time codegen
JSON becomes typed Rust
Design System Package JSON is read during the build, generating Rust structures so widgets do not parse JSON on the rendering hot path.
Design guide
Runtime selection
Env chooses the active theme
Applications can select light, dark, brand, density, or locale-aware themes in the environment callback while widgets consume stable tokens.
Theme and locale
Component states
Variants are product rules
Buttons, inputs, charts, surfaces, typography, shadows, borders, icon sizes, and interaction states should all come from the same design model.
Theme reference
Theme path
Generate code, choose a theme, apply it everywhere.
01
Generate
Convert design system JSON into typed theme code during the build.
02
Select
Set the active theme through Env from user or platform preference.
03
Apply
Let widgets, charts, shells, and product targets consume the same tokens.
No JSON hot path
Design system JSON is converted during the build, then app code selects typed themes through Env at runtime.
Generate a design system
Setup
Quickstart
Add targets
Project structure
Learn
Overview
Runtime model
Widgets
Design systems
Charts
Build
Platform shells
Terminal
Static sites
Server sites
Packaging
Test
Testing lifecycle
Diagnostics
Live UI test
Publish
Release overview
Lifecycle details
CLI reference
Examples
Fission
A cross-platform, GPU-accelerated user interface framework for Rust. MIT licensed.
Copyright (c) 2026 Fission
Ready to use today. Widget APIs are expected to remain stable; some runtime and shell APIs may change before 1.0.0.
GitHub
Quickstart
Reference
Fission 0.7.0