Rendered at 04:46:21 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
btown 2 hours ago [-]
Whenever I see a DSL where part of the DSL's responsibility is to have arbitrarily complex mathematical expressions, my reactions are (a) why???, (b) well, if they're going to do it, they should have a formal language specification with a derived lexer and parser, and (c) the product needs a robust stdlib with compatibility across build targets.
This is why I have strongly preferred JSX over any other UI DSL (specifically the typescript variant, TSX) I've tried.
It looks like a DSL, but it actually isn't - it's just regular javascript/typescript with a very thin 'declarative/markup' veneer. it basically tricks you into thinking you're writing a HTML-like UI-DSL, but it also just so happens to accept arbitrary JS expressions, because it is just regular JS.
vmg12 2 hours ago [-]
My understanding is that you arent supposed to write the entire UI in contract. You are supposed to write as much as you can with it and do the rest in js or rust
zoom6628 3 hours ago [-]
Immediate thought was the Contract reminds me of QML.
This Exact work looks great and I very much hope it succeeds. Qt has
Proven this approach works. Now if these folk at Expo can do it at a price that every dev can afford it will get much wider adoption than Qt.
wahnfrieden 60 minutes ago [-]
Isn’t it free
tdhz77 3 hours ago [-]
The world has moved away from JavaScript. With llm, native is easy and the best option even for a single developer.
jmathai 2 hours ago [-]
I converted a native iOS app to Android in 4 nights. Now every feature I add gets created in both simultaneously. Wild times.
soon_to_be_sb 3 hours ago [-]
Thank god if true, but dependence on LLMs is not great for the developers. At least good thing for the end user.
ojr 53 minutes ago [-]
The world has not moved away from Javascript, why do people always prematurely call its death? It’s in clients and servers everywhere and npm downloads are at an all time high, facts over feelings
wahnfrieden 60 minutes ago [-]
No JS here
hysan 4 hours ago [-]
Since there are no releases, I assuming this is still a WIP? It would explain why they list Linux and then don’t have any screenshots of it next to the other platforms. How it works is kinda light on details. I’m interested to learn more about the under the hood aspects of how they are translating everything to the different native toolkits.
vmg12 4 hours ago [-]
Yeah, it's an early alpha they announced on twitter today.
wahnfrieden 4 hours ago [-]
Expo CEO estimated 2-3 months until production-ready
sirjaz 4 hours ago [-]
Why isn't Windows supported. Thr largest desktop platform out there?
Ambitious. I’m sure they know what their problems are and how to solve them, as evidenced by the agent being able to control the UI’s timing (and it being mentioned so far up). Getting the agent to get interactivity right is pretty hard otherwise.
No. ccheever/exact2 is the development upstream. expo/exact is Expo’s public release of that codebase
sakesun 2 hours ago [-]
Funny. I just learnt about nsh.dev a few hours ago.
A new trend?
doodlesdev 5 hours ago [-]
This is absolutely huge. If the Expo team can demonstrate that this development strategy is viable, we will finally see a resurgence of native applications and more efficient software, getting rid of the Electron bloat.
It's a long shot for now, though! There are lot of gritty nitty details they have to get right. One of the first issues I can imagine is this framework being great to use with Opus 5.5 but not good enough with i.e. Gemini 4 Argon or DeepSeek v4.1 Flash 1017, due to the overreliance on having AI models write the code.
tevon 4 hours ago [-]
If anyone is going to get it right - I'd bet on the expo team. They know these sharp edges and have been building for them for years.
yewenjie 5 hours ago [-]
Why isn't Android support there?
solarkraft 5 hours ago [-]
Presumably they’re focusing on a few platforms first. As they noted it’s coming though
tyleregeto 3 hours ago [-]
They mention Android on the linked page. It's a work in progress, but further behind.
brainless 2 hours ago [-]
The idea that agent can built and see it is very important and how I have been building my own GUI framework https://github.com/brainless/akar
I have been using an internal screenshot feature along with a dump of the component tree. Multi-modal LLMs can be used to read the screenshot and fix issues. The dump can be read by any text based LLM. I made my life much easier.
I saw the Blender UI based framework shared on HN the other day and this one today. I am not sure if I want to continue building my own (although all code is written by agents) or if I should switch. I can take inspiration from the two other frameworks and continue with my own.
mrbombastic 4 hours ago [-]
this tendency to prioritize agents over humans for new software DX makes me sympathize with the Butlerian jihad.
wahnfrieden 3 hours ago [-]
In what way does this worsen human DX?
The announcement thread covers ways it helps agents, and they sound like things that would help humans, too.
eviks 2 hours ago [-]
Funny name because anything "exact" is the last thing you'd expect from this everchanging base
mplewis 3 hours ago [-]
Cool toy, but it's unclear when this will be stable enough for production use.
prmph 5 hours ago [-]
Is this satire?
jkahrs595 4 hours ago [-]
Is this a serious question? Why would it be satire? Is it building something you don’t like or want? Say what you actually mean.
prmph 4 hours ago [-]
It is weird. What does "agent native" mean? This looks like work that requires the use of agents to use properly.
Hence me thinking it is satire. Are we already at a point where libraries and frameworks are being written such that they require agents (from maybe paid frontier models) to properly use?
We live in strange times, if so.
Interestingly, I was just thinking of this problem today: how can I stick with react-like declarative UIs (like one I have developed myself) but yet have them abstracted over native UI frameworks of Apple, Android, even TUIs to produce native apps? What I would have expected is a fully deterministic runtime, compiler, or library approach to solving this, not an agent-driven "solution".
wahnfrieden 3 hours ago [-]
No, there's no requirement to use agents, and others are already building tools for manually working with Construct with a purpose-built editor.
Tools like Hyperframes have already demonstrated the value in catering to agentic-first dev while offering manual inspection and editing interfaces.
Agents aren't equally good at all languages/tools, and just having a lot of training data on one ecosystem isn't enough to optimize the experience. If you read the announcement thread from the CEO there are several points made such as formal safeties against invalid states and build error messages that token-efficiently teach the agent correct usage.
From what I see in https://github.com/expo/exact/blob/main/contract/syntax/src/... and https://github.com/expo/exact/blob/main/contract/syntax/src/... - it's unclear this will scale to the levels of complexity that arbitrary UIs demand.
It looks like a DSL, but it actually isn't - it's just regular javascript/typescript with a very thin 'declarative/markup' veneer. it basically tricks you into thinking you're writing a HTML-like UI-DSL, but it also just so happens to accept arbitrary JS expressions, because it is just regular JS.
This Exact work looks great and I very much hope it succeeds. Qt has Proven this approach works. Now if these folk at Expo can do it at a price that every dev can afford it will get much wider adoption than Qt.
Amazing things are happening in this codebase.
A new trend?
It's a long shot for now, though! There are lot of gritty nitty details they have to get right. One of the first issues I can imagine is this framework being great to use with Opus 5.5 but not good enough with i.e. Gemini 4 Argon or DeepSeek v4.1 Flash 1017, due to the overreliance on having AI models write the code.
I have been using an internal screenshot feature along with a dump of the component tree. Multi-modal LLMs can be used to read the screenshot and fix issues. The dump can be read by any text based LLM. I made my life much easier.
I saw the Blender UI based framework shared on HN the other day and this one today. I am not sure if I want to continue building my own (although all code is written by agents) or if I should switch. I can take inspiration from the two other frameworks and continue with my own.
The announcement thread covers ways it helps agents, and they sound like things that would help humans, too.
Hence me thinking it is satire. Are we already at a point where libraries and frameworks are being written such that they require agents (from maybe paid frontier models) to properly use?
We live in strange times, if so.
Interestingly, I was just thinking of this problem today: how can I stick with react-like declarative UIs (like one I have developed myself) but yet have them abstracted over native UI frameworks of Apple, Android, even TUIs to produce native apps? What I would have expected is a fully deterministic runtime, compiler, or library approach to solving this, not an agent-driven "solution".
Tools like Hyperframes have already demonstrated the value in catering to agentic-first dev while offering manual inspection and editing interfaces.
Agents aren't equally good at all languages/tools, and just having a lot of training data on one ecosystem isn't enough to optimize the experience. If you read the announcement thread from the CEO there are several points made such as formal safeties against invalid states and build error messages that token-efficiently teach the agent correct usage.
> What does "agent native" mean?
https://github.com/expo/exact#1-agent-native defines it
Agent native is said once in this readme, following an immediate explanation and specific features.