Changelog

What shipped, and when.

Changes that reached the live site, newest first, in plain words. Work in progress is listed the day it ships, not before.

Follow with RSS

  1. The App Builder by keyboard, and a canvas true to each phone

    App Builder

    Everything in the App Builder now works from the keyboard. Add a block from the Blocks panel, move between blocks with the arrow keys, press Enter to select one, F2 to rename a screen and Delete to remove a block. Dialogs keep your focus until Escape closes them.

    Each phone on the canvas now shows exactly its device’s screen, with the header your exported app gives it (a large title on a tab), the app’s own screen and card colours, and text at the app’s sizes.

    Open the App Builder
  2. More of Android follows Material 3

    iOS · Android

    On Android, the floating action menu is Material 3 Expressive’s own, search opens Material’s search field, and the stepper, the quantity stepper and the icon buttons take Material’s shapes, sizes, press feedback and haptics.

    On iOS, the stepper is Apple’s system stepper, and the date picker and a header’s main action take your app’s accent colour instead of system blue.

    Each was checked on an iPhone and a Pixel 8 before it shipped, and so was every starter app.

    Browse the components
  3. Exports get the small things right

    iOS · Android

    A generated sign-up form now hides the password as you type it, and iOS offers a strong password. Email fields bring up the email keyboard, Return moves to the next field, and the form moves out of the keyboard’s way.

    A button you put in a screen’s header becomes a native bar button on iOS and a top app bar action on Android. The floating add button floats in the corner above the tab bar instead of scrolling away with the list, and dates open the system picker: Apple’s compact date picker on iOS, Material 3’s date and time dialogs on Android.

    Each was checked on an iPhone and an Android phone before it shipped.

    See them on both phones
  4. The compatibility table, checked again

    iOS · Android

    Every component was run again on an iPhone and a Pixel 8 at the current code, and a generated app was built and run on both phones, so every cell of the table is a fresh observation.

    Verified on iOS 26 and on Android 16 with Material 3 Expressive. iOS 27 support is in progress.

    See what runs where
  5. Select several blocks, and Tidy up

    App Builder

    Shift-click blocks, or drag a box around them, and they move, duplicate and delete as one. Drag the group to another row or onto another screen, and any arrow it carries goes with it.

    Tidy up lays your screens out in the order people move through them, with one press or Ctrl+Alt+T. Each of these is a single undo.

    Open the App Builder
  6. Every component, recorded on both phones

    iOS · Android

    The components page now plays each component on an iPhone and an Android phone side by side, at one scale, in light and dark, with its measured size under each. Liquid Glass on iOS 26, Material 3 Expressive on Android: two design languages, each the real thing.

    Browse the components
  7. Arrows that build what they show

    App Builder

    The App Builder’s arrow menu, offering Opens, Pops up, Switches tab and Moves on, each with a sentence on what it builds

    Draw an arrow from a button to a screen and that is the navigation your app ships with. Every arrow says what it does (Opens, Pops up, Switches tab or Moves on), and an arrow the app cannot build is flagged on the canvas instead of at the end.

    The blocks panel speaks plain words, grouped by what each block is for with the most used first, and its search forgives a typo. Drag to move, pull an edge to resize, guides appear when your spacing is even, and a short tour shows you around the first time.

    How it works
  8. Components carry the names the platforms use

    Agents

    Components are named the way Apple, Material and the major React Native libraries name them: a switch is switch, a segmented control is segmented-control, a sheet is bottom-sheet.

    Every name we ever published keeps working. Apps exported before the rename keep receiving updates, and an agent that asks for an old name gets the right component.

    Browse the components
  9. One table for what runs where

    iOS · Android

    One compatibility table now feeds every page, the docs and what your agent is told. It is generated from what was actually run on a device, so nothing claims a platform until a run says so.

    Xcode 27 support is in progress: a project on Expo SDK 56 built with Xcode 27 crashes at launch on iOS 27, so stay on Xcode 26 until our exports move to Expo SDK 57 (expo 57.0.23 or later and expo-build-properties 57.0.20 or later) with ios.enableSceneSupport. Your agent is told before it builds, and verify_app stops rather than hand you an app that would crash at launch.

    See what runs where
  10. A shorter Android tab bar

    Android

    The Android tab bar is now Material 3 Expressive’s short navigation bar: 64dp tall, and 88dp with the gesture area under it, measured on a Pixel 8. It was 128dp, because the room for the gesture area was added twice.

  11. Connect your coding agent in one step

    Agents

    A setup page with the exact command or config for Claude Code, Cursor, Codex, VS Code and Gemini CLI, with a copy button for each. The free lookup tools need no account and no key.

    llms.txt and AGENTS.md now point agents to the same page, so an agent that finds us on its own lands on the right instructions.

    Connect your agent
  12. A simpler price: $25 a seat

    Pricing

    One plan at $25 per seat per month, or $20 a month billed yearly. The price you join at is locked for as long as you stay subscribed, and designing in the browser stays free.

    See pricing
  13. Material 3 Expressive on Android

    Android

    One screen designed in the App Builder, running on iOS and on Android

    Every component on Android now draws Material 3 Expressive through Jetpack Compose, on every Android version, with no glass or blur. All ten starters were re-checked on Android 16, 15 and 11.

    iOS keeps real Liquid Glass on iOS 26. The two are different design languages on purpose: native on both.

  14. Tap through the app you drew

    App Builder

    The App Builder's starter picker, showing ten starter apps

    Preview runs your screens the way the app will: tap a block to follow its arrow, switch tabs, go back. A command menu (Cmd K or Ctrl K) finds any screen, block or action by typing.

    Starters now open ready to edit, and the picker shows each one’s real first screen.

    Open the App Builder
  15. Tested with Claude Sonnet: no top-tier model needed

    Agents

    A Claude Sonnet-class agent built the Bookings starter from a share code and ran it on iOS and Android with zero interventions, twice in a row. Our tools used about 2% of the agent’s context on the whole build.

  16. Your agent keeps building after the first app

    Agents

    New build tools let your agent add a screen, install a component and update the components and app shell we supplied as iOS and Android move. verify_app checks the result against what it was told to write, so the agent knows when it is done.

  17. Listed in the official MCP registry

    Agents

    The opointo server is live and listed, so agents can find it by name. The lookup tools are free: which component to use, what props it takes, and whether a snippet will render blank.

  18. Exports build from a bare project

    iOS · Android

    A generated app now builds and runs from an empty folder outside our code, on iOS and on Android, and the licence terms travel with the export.

  19. Pop-ups join tabs and pushed screens

    App Builder

    An arrow can now open a screen as a pop-up (a modal) as well as a tab or a pushed screen, which completes the navigation you can draw. Navigation headers follow your theme in dark mode.

  20. Send your app to your agent

    App Builder · Agents

    The App Builder's handover dialog with the one line to paste into a coding agent

    The whole canvas now ships as one app: press Send app to agent, paste one line into your coding agent, and it builds an Expo project with your screens, the navigation and the app shell.

  21. Your canvas saves itself

    App Builder

    Everything on the canvas is saved in your browser as you work, so a reload never loses a design.

Your app moves with us. Your own code stays yours.

Your agent can update the components and app shell we supplied. What you wrote is never touched.