Polypane. Browser for web devs

@polypane.app

See every screen, device & user preference, while you build. Chromium-based workspace for building great websites. Built for web developers who care | Try out for free at https://polypane.app | By @kilianvalkhof.com

If you're an accessibility auditor or implementer, Polypane 31 has a massive time-saving feature for you! With per-pane zoom settings, you can now check 100% page zoom right alongside 200% and 400% zooms, letting you check WCAG 1.4.4 and 1.4.10 in one fell swoop, with easy comparison back to 100%.

A website in three panes in Polypane at three different zoom levels: 100%, 200% and 400%

Polypane 31 is here and ...it has a boatload of cool new features! 🖼️ Canvas layout with free-form placement ↔️ Flex item inspector 🎯 Navigate to custom properties ...and back! 🔍 Per-pane zoom settings 🏎️ Page performance monitoring 📱new iPhone 18 and duo presets polypane.app/blog/polypan...

Polypane 31: Canvas layout, elements panel improvements and Chromium 155 | Polypane

This release has a new canvas layout that lets you freely arrange panes on an infinite canvas. The elements panel now lets you filter styles, search the DOM…

polypane.app

Polypane 31 is here and ...it has a boatload of cool new features! 🖼️ Canvas layout with free-form placement ↔️ Flex item inspector 🎯 Navigate to custom properties ...and back! 🔍 Per-pane zoom settings 🏎️ Page performance monitoring 📱new iPhone 18 and duo presets polypane.app/blog/polypan...

Polypane 31: Canvas layout, elements panel improvements and Chromium 155 | Polypane

This release has a new canvas layout that lets you freely arrange panes on an infinite canvas. The elements panel now lets you filter styles, search the DOM…

polypane.app

The root scroller in your browser (the one scrolling the viewport) is special, but it's really easy to accidentally create a new scroll container. Learn how those nested scroll containers break scroll restoration, mobile browser UI and more, plus how to avoid them.

The root scroller and how not to lose it | Polypane

Every page has one main scroll container that scrolls the page itself: the root scroll container, or root scroller for short. Because it scrolls the entire page…

polypane.app

The root scroller in your browser (the one scrolling the viewport) is special, but it's really easy to accidentally create a new scroll container. Learn how those nested scroll containers break scroll restoration, mobile browser UI and more, plus how to avoid them.

The root scroller and how not to lose it | Polypane

Every page has one main scroll container that scrolls the page itself: the root scroll container, or root scroller for short. Because it scrolls the entire page…

polypane.app

I've been debugging sites using different scroll containers at different viewports widths and thinking of ways to make it clearer what's happening, rather than people thinking the sync in Polypane doesn't work. The first change is in: highlighting the scroll badge of whatever is being scrolled.

There's apparently a thing about Cloudflare's tunnel... So a reminder that @polypane.app has that feature built-in. Single click, network or public URL, short-lived unique non-indexed URL. Everything is synced to all devices, all console messages are sent back to the console. polypane.app/portal/

Polypane Portal | Polypane

Polypane Portal shares your local development environment with anyone, anywhere, on any device while keeping everything in sync.

polypane.app

Our source panel can now toggle between the rendered and the server-sent HTML! Both are automatically formatted, both are validated. If you're not sure if an HTML issue starts on the server or in your JS, that's now super easy to find.

The Polypane Source panel with a new "rendered"/"server" toggle. The validation says"Congratulations, this server HTML is valid!"

Our elements panel got an exciting addition. Hover over the specificity of a selector to see each part of it highlighted, so you know exactly what's responsible. Intelligent enough to drill down into nested `:is()` selectors, intelligent enough to drill up into nested selectors.

A complex selector with a highlighted specificity. Several part of the text are underlined and highlighted with different styles.A neste selector with a highlighted specificity. Several part of the text are underlined and highlighted with different styles.

Polypane 30 is out! 🤩 🛝 Playgrounds: go from .html to multi-device testing in 3 clicks 🔤 text-scale emulation 📹 recording w/ sound 🌐 Network panel filtering & sorting ✨ Sidepanel browser extensions 🔗 Standard.site validation & previews 🌍 Chromium 152 ⛰️ MORE STILL polypane.app/blog/polypan...

Polypane 30: Playgrounds, Side Panel extension API, updated video recording and Chromium 152 | Polypane

Polypane 30 introduces Playgrounds so you can open directories as real HTTPS URLs in seconds, adds support for the Side Panel extension API, brings major…

polypane.app