Test your site on dozens of screens at once — free app for Windows, macOS and Ubuntu/Linux, plus a Chrome extension
It looked perfect in Chrome. On the phone, it didn't. Cut-off text, buttons hidden behind the Safari bar, sideways scrolling…
I looked for tools to test many screens at once, but all of them were paid one way or another: monthly plans, limited free trials or the useful features locked away. So I built my own.
Along the way I found out why “it looks fine in Chrome”:
- !The desktop scrollbar steals ~15px — a 390px iPhone ends up with a 375px layout
- !CSS behaves as if there were a mouse: @media (hover: hover) and (pointer: fine) stay active
- !100vh ignores the browser bars, which cover the bottom of the page on a phone
- !On iPhone, every browser (Chrome included) uses the Safari engine
The simulator fixes the first two on every screen and shows the third with the Bars option. For the fourth, the app also opens in the Safari engine and on your real phone.
Two ways to use it, both free:
App (Windows, macOS, Linux): download it, open it and paste your project URL — localhost:3000, localhost:5173 or any website. No need to install Node or touch the project. Includes real phone mode (QR code on the same Wi-Fi), other browsers and Google login.
Chrome extension: install it and click the icon. It opens the simulator in a tab, works with any website and syncs without installing anything in the project.
app/ → single executable (Node.js Single Executable), zero dependencies ├─ reverse proxy → serves the site on the same origin and injects the sync script ├─ BroadcastChannel → syncs the screens in the same browser ├─ Server-Sent Events → real phone and other browsers in real time └─ Chrome DevTools Protocol → brings over the Google login session extension/ → Chrome Manifest V3 ├─ declarativeNetRequest → lets sites open inside the simulator screens └─ content script → postMessage, phone emulation (CSSOM, Navigator) ui/ → plain HTML + CSS + JavaScript · iframes · transform: scale()
- +31 devices: iPhone SE → 16 Pro Max, Galaxy, Pixel, Xiaomi, Fold, iPads and desktop + custom sizes
- +A grid with every screen at once, or focus mode on a single one at real size
- +Clicks, text and scrolling synced across all screens
- +Real Safari and Chrome bars: see what 100vh hides on a phone
- +Phone emulation: user agent, touch, hover: none / pointer: coarse, no 15px scrollbar
- +Automatic warnings: missing meta viewport, overflowing content, inputs that zoom on iPhone
- +App: opens on your real phone via QR code, in other browsers (Firefox, WebKit) and with Google login
- +Chrome extension: any website, right in the browser, without installing anything in the project