Documentation
For AI agents: this page is Markdown at https://squiggle.sh/docs.md. Every docs page is listed at https://squiggle.sh/llms.txt, and all of them are one file at https://squiggle.sh/llms-full.txt.
Squiggle tests, profiles and debugs your React Native app from the inside. It sees which component is on screen, what it rendered and what a tap set off, so your tests survive a redesign and a slow screen points at the code that made it slow.
Start here
Setup takes one command and one rebuild. After that, your first flow takes a few minutes.
- Set up your appInstall Squiggle, run squiggle init, and rebuild once.Set up
- Your first flowRun the flow init wrote, then record one of your own.Write a flow
Not ready to install? Try Studio in your browser first, on a demo app.
What you can do
- Test journeysFlows in YAML that find controls by what they are, and keep passing when the layout changes.Write flows
- Describe a step as a goalYour coding agent works out the steps once. Every later run replays them.Agentic flows
- Find what is slowFindings that name the component, the request or the render behind a slow screen.Performance
- Inspect a componentPoint at anything on screen to see its props, state and the line that renders it.Inspector
- Replay a sessionRecord a session, play it back, and keep the seconds before a crash.Record and replay
- See how people use itA heatmap, rage taps and funnels, with no events to add by hand.Analytics
Your coding agent can do all of this too, through Squiggle’s MCP server. See Connect your agent.
What it runs on
- An Apple Silicon Mac with macOS 15 or later, and Xcode.
- A React Native app you can rebuild: an Expo development build or a bare React Native app. Expo Go can’t load the SDK.
- iOS apps in the simulator, and React Native macOS apps. Squiggle doesn’t drive Android or web apps.