SootSim
SootSim lets you develop, test, and share React Native iOS apps without a Mac, Xcode, or a native build step in the inner loop.
We’ve re-implemented React Native and iOS in CanvasKit, the engine Flutter uses based on SKIA and WebAssembly.
SootSim works just like the iOS simulator, except you install it with
npm i -g sootsim and run it with sootsim open. It loads right in your
browser, with an optional desktop app that gives you the authentic iOS simulator
experience all the way down to the menu items. The Electron app can read your
device dimensions better to give you pixel-perfect physical sizing.
Quick start
terminal
Start your app normally, then point SootSim at the dev server port.
If you want a permanent /__soot URL on the same server your team already runs,
cd into your repo that uses Metro or One and run:
terminal
It will help you install the optional Metro or One plugins that give your entire team access with no fuss.
Use cases
We think SootSim can drive a good chunk of your development today, but it’ll take some more time to get to a completely “iOS simulator free” world for large apps.
We’ve invested heavily conformance testing, with robust, pixel-diffing tests.
That said, outside of just development, there’s a host of interesting use cases for a web-only React Native simulator:
- Fast, cheap shareable live-demos — Host live links to your actual interactive app in CI/CD, or just record a quick demo to share with teammates or clients.
- Build faster with AI agents — The
sootsimCLI is 10x faster than XCode CLI or Chrome MCP, with powerful features like automatic multi-agent isolation, React Native specific information and settling logic. - Automatic PR previews — Plug in our Github bot and it will learn your repo and generate custom flows with a live preview link and video for every PR based on the specific git diff.
- App store screenshots — Pose your app, add text, and choose some colors in Screenshot Mode to get your App Store screens ready in minutes. It even integrates with your
- Beautiful 3D demos for social media — 3D Mode comes with many settings, pre-scripted movement, and because it runs your real app, you can pose and record gorgeous demos fast.
Does it really work?
You may be wondering how viable SootSim is as a replacement for your React Native development stack. We’ll say this:
Yes, it does
We worked hard to build compatibility to the point where we can run all the biggest, baddest OSS React Native example projects we could find: Bluesky, Uniswap, Expensify, and Artsy.
All of those apps fully work — they render and function nearly identically to their real native iOS counterparts. You can even login and post to Bluesky, or link a wallet and trade on Uniswap!
But also no, not quite
Rebuilding iOS, React Native, and all the popular React Native native libraries to two nines will take time.
We made a Compatibility page and a Proof page, so you can evaluate our exact conformance better. You can also drag and drop your package.json there to better see how well we support your existing app.
What we are confident about is the viability.
SootSim is an idea that wasn’t possible before powerful coding agents. But now, with a great harness and CLI, it is. We’ve built the hardest parts, and now it’s a matter of iteration.