LimAI

πŸ“±Live Preview

How the in-browser sandbox and the on-phone preview work.

4 min readΒ·Last updated 2026-05-17

The right pane is a real preview, not a render of a render. Two flavors: a browser shim for speed, and Expo Go for native fidelity.

Browser shim

An iframe mounts a tiny React Native shim that maps View, Text, Image, Pressable, ScrollView and a handful more to DOM equivalents. We compile your JSX with Babel Standalone in-browser, so there's no build step. Round-trip from edit to repaint is around 100ms.

Expo Go preview

For native APIs (camera, push, share sheet) you'll want Expo Go. Open the app on your phone, scan the QR in the preview pane, and you're running on real hardware. Metro logs stream back into the console panel.

⚠️
Shim limits

Native modules (camera, audio recorder, in-app purchases) won't run in the browser shim. The preview shows a placeholder and Claude knows to switch to Expo for testing those.

Console

The bottom-of-preview console captures console.log from both flavors. If your build errors out, you'll see the stack trace there before anything blows up visually.