Expo Exact: The Unified UI Solution That Was Inevitable
First look · a pre-alpha preview, and a reason to be excited about desktop development.
Expo Exact brings Rust, Contract, and native UI into one app framework. Why its pre-alpha preview and the team behind it matter for the desktop tooling gap.

As someone who has spent more than eight years in application development, desktop tooling has never felt clean to me. I want small, fast apps, good components, and a development loop that gets out of the way. That gap felt too obvious to stay open forever.
I wrote about it in I just wanted a small desktop app. I later proposed BUI — Browser User Interface: let local software borrow the browser we already have. But I kept wanting a stronger answer for native applications.
Now Expo’s Charlie Cheever has introduced Exact, and Expo came out swinging.
Expo is a large part of why I’m paying attention. They have already fought this war on Android and iOS: cameras, sensors, permissions, native integrations, builds, updates, and the development loop. Expo Camera and Expo Sensors show how far below the UI their open-source work goes.
Expo made mobile development feel much closer to the web workflow I wanted: change something, see it quickly, keep building. React Native has also moved toward more direct native integration. Performance still depends on the workload, but the lessons from making that stack practical are valuable.
That history matters as Exact builds out its own platform integrations.
Exact puts Rust underneath the framework. Interfaces, state, and actions live in Contract, a new declarative language; deeper logic can use TypeScript or Rust. I like that combination: a shared UI model, familiar web-style layout, and control over where Rust does the heavy lifting.
On iOS and macOS, Exact uses UIKit and AppKit views and native controls. The web gets real DOM and CSS. Windows and Linux involve more custom drawing. Shared components are the attraction; getting each platform right still takes platform-specific work.
The update model is especially interesting. Contract exposes dependencies to the compiler, allowing targeted UI updates without a React-style virtual DOM and re-render cycle. The first screen can also be prepared at build time, so native startup does not have to wait for application JavaScript.
Exact also gives coding agents tools to inspect the UI, operate controls, capture screenshots, read state, and control the test clock. That matters. A framework should help us build, debug, and verify an application across its target platforms.
This is a pre-alpha preview. Cheever says iOS is furthest along; web and macOS are in better shape, while Android, Windows, and Linux are less mature. APIs are still changing. This is a first look, with hands-on testing still ahead.
Still, this is the direction I was waiting for. The demand for shared UI, native integration, fast iteration, and useful tooling was already there. Exact gives that demand a serious new answer. For desktop development, that is a reason to be excited.
I’m calling it now: 2027 will be Exact’s viral adoption moment.
Topics
- expo-exact
- rust
- contract
- native-ui
- desktop-apps
- cross-platform
- react-native
- ai-agents
Sources
- Charlie Cheever · introducing Exact and its native rendering approach - Charlie Cheever
- Exact · official architecture, current capabilities, and limitations
- Expo Camera · camera access across platforms
- Expo Sensors · device sensor APIs
- Expo · open-source tools and the development workflow
- React Native · direct native integration and performance trade-offs
- Charlie Cheever · compile-time dependencies and targeted updates - Charlie Cheever
- Charlie Cheever · platform maturity at the preview launch - Charlie Cheever