A real iPhone in your browser
Every app on VP0 runs live in a pixel-accurate iPhone — not a screenshot, not a video. Grab it, scroll it, type in it. Then embed it anywhere.
What it does
Embed a live app on your site
Every public app has a live embed at vp0.com/embed/<slug>. Paste this and the phone boots on your page:
<iframe
src="https://vp0.com/embed/YOUR-APP-SLUG?theme=dark"
width="360" height="780"
style="border:0;border-radius:16px"
allow="autoplay" loading="lazy"></iframe>Params: theme=light|dark, appearance=light|dark, device=iphone-16-pro|iphone-se|ipad-pro-11|…. Platforms with oEmbed (Notion, Medium, WordPress) expand pasted VP0 links automatically.
Devices
| Device | Logical size | Scale | Safe area | Sensor |
|---|---|---|---|---|
| iPhone 16 Pro | 402×874 pt | @3x | T59 · B34 | Dynamic Island |
| iPhone 16 Pro Max | 440×956 pt | @3x | T62 · B34 | Dynamic Island |
| iPhone 16 | 393×852 pt | @3x | T59 · B34 | Dynamic Island |
| iPhone SE | 375×667 pt | @2x | T20 · B0 | — |
| iPad Pro 11" | 834×1194 pt | @2x | T24 · B20 | — |
The honest ceiling
The simulator runs React Native through react-native-web inside a locked-down sandbox — no network egress, no native binaries. Native-only modules (camera hardware, Bluetooth, HealthKit) are refused with a clear reason; maps, video, and web views render honest offline equivalents. Real-device behavior always wins: export the Expo or Xcode project from any app page and run it in Xcode.