sootsim do

sootsim do

Grouping verb for user-interaction actions. sootsim do <action> covers the write side of the bridge: taps, typing, key presses, touch/scroll/drag/swipe/pinch gestures, reload, and local timing helpers.

terminal

sootsim do <action> [args]

Examples

terminal

sootsim do tap 196 727
sootsim do double-tap 196 400
sootsim do tap-text "Sign in"
sootsim do tap-id loginNextButton
sootsim do type "natew.bsky.social"
sootsim do type-into email "[email protected]"
sootsim do key return
sootsim do key-sequence shift h i
sootsim do dismiss
sootsim do scroll feed 0 400
sootsim do drag 200 720 200 160
sootsim do swipe 200 720 200 160
sootsim do gesture swipe-from-bottom-edge
sootsim do reload

Subcommands

Run sootsim do <verb> --help for the flags and examples of any subcommand.

targeting

subcommanddescription
tap <x> <y>tap absolute coords, or a node by —testid / —text
double-tap <x> <y> [gapMs]tap the same coordinates twice quickly
tap-text <text> [--nth <n>] [--within <testID>]findByText then tap (rich disambiguation flags)
tap-id <id>findByTestId then tap center
tap-best <query>testID-first, text-fallback robust tap

native device

subcommanddescription
scan <text> [--format <web-format>]inject a barcode scan into active camera scanning

text input

subcommanddescription
type <text>type through the iOS visual keyboard
type-into <id> <text>focus input by testID then type
key <name>special key (return, delete, space, shift, …)
key-sequence <key> [<key> ...]press multiple visual keyboard keys
keycode <code> [<code> ...]press DOM-style key codes via visual keyboard
dismissdismiss the iOS keyboard
dispatch <char>raw key (bypasses visual shift state)

gestures

subcommanddescription
scroll <id> <x> <y>scroll a ScrollView by testID or inspect node id
drag <x1> <y1> <x2> <y2> [steps] [stepMs]drag via real PointerEvents
swipe <x1> <y1> <x2> <y2> [steps] [stepMs]drag with faster defaults
long-press <x> <y> [durationMs]hold a press at coordinates
touch <down|move|up|cancel> <x> <y> [pointerId]low-level touch primitives
gesture <preset> [durationMs]preset gestures (scroll / edge swipes)
pinch <x1> <y1> <x2> <y2> <x1'> <y1'> <x2'> <y2'> [steps] [stepMs]two-pointer pinch helper

animations

subcommanddescription
stop-animation <id|all>stop a running animation

lifecycle

subcommanddescription
reloadreload the page + wait for reconnect
wait [seconds]wait for sim reconnect
settle [seconds] [--strict]wait for animations to settle
sleep [seconds]local pause between commands

Ready to build?

Run your React Native app in the browser. No simulators, no native toolchain, no waiting.

curl -fsSL https://sootsim.com/install.sh | sh