hn.today

Exact: A new agent-native app framework written in Rust, from Expo team

twitter.com5 points0 comments
Screenshot of Exact: A new agent-native app framework written in Rust, from Expo team

Exact is a preview of a Rust-based framework for building web, mobile, desktop, terminal, and game interfaces with AI agents in mind. Its UI language, Contract, is designed to be concise, strongly typed, and constrained enough for compiler analysis. It describes interface structure alongside state and data flow, while excluding constructs such as arbitrary JavaScript and useEffect that can make behavior harder to analyze or optimize. The compiler aims to guide agents with targeted error messages rather than requiring them to absorb extensive documentation. Agents can also control the app’s clock, inspect its UI state and layout, and capture screenshots or video, making testing more deterministic and the feedback loop faster.

The framework’s central promise is to combine near-static-site performance with dynamic app behavior. Because Contract makes UI and data relationships explicit at compile time, Exact can optimize updates without a virtual DOM and prepare the first screen in advance. Its creator reports web benchmark results close to Astro and ahead of Next.js and SvelteKit, and claims strong native scrolling and startup performance compared with SwiftUI and a native shopping app. Apps can mix TypeScript and Rust, or use platform-native code where needed; Contract changes can appear in milliseconds, with Rust and TypeScript also supporting hot updates. Exact uses native controls where available, offers its own renderer on less standardized platforms, and includes GPU support. iOS is described as the most mature target, while Android, Windows, and Linux remain less developed.

Read on twitter.com0 comments on Hacker News

Summary generated by AI from the linked article. hn.today is not affiliated with Hacker News or Y Combinator.

More in Programming

The daily digest

Today's best Hacker News stories, summarized and screenshotted, one email a day.