Sign in

iiinova is part of the Atmosphere — an open, public network where you own your identity.

Kilian Valkhof

@kilianvalkhof.com
5.3K followers 542 following 2.4K posts

I build tools for devs and designers: @Polypane.app, FixA11y, Superposition | Electron governance member | He/him

PostsRepliesMedia
Kilian Valkhof @kilianvalkhof.com · 16/10/2026
Presented without comment.
a split view chrome, one showing the search results for "bun anthropic" with the ai overview filling half, the other searching for "bun anthropic fuck" which mysteriously lacks the ai overview.
110 1
Kilian Valkhof @kilianvalkhof.com · 09/10/2026
Also, maybe try better devtools ;)
Polypane's elements panel showing ::details-content styling in context of the details element
010 1
Kilian Valkhof @kilianvalkhof.com · 08/10/2026
Looks interesting! I would use @polypane.app to check where that horizontal overflow is coming from. Also features a contrast checker that suggests improvements by the way.
010 1
Kilian Valkhof @kilianvalkhof.com · 01/10/2026
...Copy URL as markdown was pretty cool (Shift + cmd/ctrl + U in @polypane.app btw) But what about Copy page as markdown?
Polypane showing two panes with the Arc browser website. A context menu item is visible and "copy page as markdown" is highlighted in that menu.
180 8
Kilian Valkhof @kilianvalkhof.com · 29/09/2026
This one fully supports Flexbox though.
a Flex Item inspector
240 4
Kilian Valkhof @kilianvalkhof.com · 29/09/2026
Working on an infinite canvas is just so, so smooth.
1193 19
Kilian Valkhof @kilianvalkhof.com · 29/09/2026
IT HAS DARK MODE
Two panes showing the new example.com, one in light mode and the other in dark mode
191 9
Kilian Valkhof @kilianvalkhof.com · 22/09/2026
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.
1102 10
Kilian Valkhof @kilianvalkhof.com · 16/09/2026
I’m at @ndcconferences.com Oslo, speaking in room one in 20 minutes! I’m gonna go over one of my favorite browser API’s: the Intl API.
Room one overview showing the keynote, then ‘up next’ shows Kilian.
3100 10
Kilian Valkhof @kilianvalkhof.com · 09/09/2026
Playing around with something I barely understand: displacement filters in SVG! The backdrop in the @polypane.app header now has defraction and chromatic abberation, an upgrade from the simple blur + saturate it had. Chromium only, with the previous style as fallback for other browsers.
2151 15
Kilian Valkhof @kilianvalkhof.com · 03/09/2026
Someone sent me this Polypane slop graphic to sell their AI slop generator and it's bad but... the unintentional reference it makes is actually very satisfying.
a poster hanging on a wall with the word "polypane" on it, except the word runs outside of the poster
3170 17
Kilian Valkhof @kilianvalkhof.com · 02/09/2026
Thank you for your efforts 🫡
next version

remove initial-scale=1 recommendation for meta viewport (Thanks Declan!)
030 3
Kilian Valkhof @kilianvalkhof.com · 28/08/2026
Well this is just cool! It even has the invisible cone between an item and its submenu so it doesn't close as you move diagonally. Video made in @polypane.app BTW :)
3318 31
Kilian Valkhof @kilianvalkhof.com · 20/08/2026
Anything random is a joy to test in @polypane.app by the way, because you really get a feel for how it behaves.
031 3
Kilian Valkhof @kilianvalkhof.com · 19/08/2026
yeah yeah yeah.
Trello todo page titled "Create light mode cheat sheets"
011 1
Kilian Valkhof @kilianvalkhof.com · 19/08/2026
Imagine seeing this in 2026
Unsupported Browser

The browser version you're using is not supported.
Please use one of these options to improve your experience.
Google Chrome
Version 21+
Edge
Version 70+
5402 40
Kilian Valkhof @kilianvalkhof.com · 30/07/2026
A horror story in six words.
to: Kilian at Polypane
Kilian Can I call you tomorrow?
4170 17
Kilian Valkhof @kilianvalkhof.com · 14/07/2026
Listen, if you are a designer or developer and this is what you come up with as the cancellation UI, please leave the industry.
a modal dialog asking "are you sure you want to cancel" with a HUGE button saying "nevermind" and only below that, a tiny text saying "Yes, cancel and lose access".
7755 75
Kilian Valkhof @kilianvalkhof.com · 30/06/2026
I’m at DWX in Mannheim today. Come say hi and join my session at 15:30 on the second floor!
Kilian standing in front of a stairwell with a large banner saying ‘enter the developer world’. The ceiling is covered in blue and green lights.
180 8
Kilian Valkhof @kilianvalkhof.com · 24/06/2026
I wrote the logic for this so it shouldn't surprise me, but I was very pleased nonetheless to see that @polypane.app's focus order overlay perfectly takes the reading-flow example in @matuzo.at's article into account.
A code + live preview example using reading-flow, with an overlaid focus order that follows the reading flow and not the source order.
1102 10
Kilian Valkhof @kilianvalkhof.com · 22/06/2026
I'm about halfway and 4000 words into an article on `random()` in CSS. Here's an aurora.
3392 39
Kilian Valkhof @kilianvalkhof.com · 22/06/2026
Nearly there with @polypane.app's preview. If you are smart with @bsky.app or standard site: 1. Why is the live publication button not my accent color 2. Why is my icon text ("K") dark instead of light?
201 2
Kilian Valkhof @kilianvalkhof.com · 18/06/2026
I'm implementing the Chrome Extensions sidepanel API so I can support @lloydi.com's wcag lookup extension, but I need a bunch more to test! What are your favorite sidepanel extensions that you'd love to see in @polypane.app ?
Polypane with an "extension" side panel open, showing the "Look up WCAG Success Criteria" extension.
023 3
Kilian Valkhof @kilianvalkhof.com · 18/06/2026
Figured out a way to toggle between discrete values (while we wait for random-item() to make that easier) and weighted values. Now I can get creative random styling for a poem by randomly marking items as block or inline, italic or normal. Plus some random font sizes and margins for good measure.
010 1
Kilian Valkhof @kilianvalkhof.com · 18/06/2026
Hey look an interactive one, still only HTML and CSS. Randomly stacked Polaroids, click to slide them away from the stack (checkboxes), then bring them all back (reset button)
130 3
Kilian Valkhof @kilianvalkhof.com · 18/06/2026
No multi-pane view here, since mouse position is not synced. But between Layout debugging and the 3d view, @polypane.app gives you a (super janky) noclip debug mode 🤯
073 7
Kilian Valkhof @kilianvalkhof.com · 17/06/2026
Cherry blossom! This is a heavy one: inspecting one of the petals crashes the web renderer. random-item() isn't implemented yet, but the petal styles still look random because even though the pattern repeats each petal starts at a random point.
241 4
Kilian Valkhof @kilianvalkhof.com · 17/06/2026
This demo has been chugging along on my device all night and isn't using any CPU though! It's a stepping stone to the one I'll be working on next.
220 2
Kilian Valkhof @kilianvalkhof.com · 16/06/2026
This doesn't look that great on mobile but when it comes together on the large size it's quite pleasing, so I'm gonna play around with it a bit more. I can probably do with a little less skewing and wider rays. not pictured: all my fans are blazing.
110 1
Kilian Valkhof @kilianvalkhof.com · 16/06/2026
Playing around with more random() to get a bunch of cool demos for an article on it. Just pretty visuals for now, still thinking of examples for element-shared or explicitly not element-shared, steps, (fixed) base values.
Three panes showing many lines randomly intersecting at different angles
1202 20
Kilian Valkhof @kilianvalkhof.com · 16/06/2026
Stop the time! Implementation finished
Polypane's elements panel showing a button with a commandfor attribute referencing another element. The element is highlighted in the page as the cursor hovers over the inspect button for the commandfor in the elements panel.
150 5
Kilian Valkhof @kilianvalkhof.com · 16/06/2026
...fine, I'll do it.
140 4
Kilian Valkhof @kilianvalkhof.com · 15/06/2026
Still recovering from an amazing two days of #CSSDay. Thanks everyone that came by my little booth and let me geek out about everything in @polypane.app! If you got a sticker and stuck it somewhere cool, share a photo with me ❤️ (photo by @sjoy.lol)
Kilian pointing at a screen showing Polypane and smiling
1172 17
Kilian Valkhof @kilianvalkhof.com · 12/06/2026
#cssday pick up an interest invokers cheat sheet at the @polypane.app booth! :)
Polypane cheat sheets
2172 17
Kilian Valkhof @kilianvalkhof.com · 08/06/2026
Yep, got the handle using the describeRepo call! Gotta do some pixel-tweaking and set the dark mode colors but other than that, it works!
Polypane's preview of Mastro's blog with bluesky enrichment
120 2
Kilian Valkhof @kilianvalkhof.com · 05/06/2026
Design is of course heavily work-in-progress, but thanks to @bell.bz struggling with it, I've now implemented - Record verification - Schema validation - opening the schema in pdsls.dev
351 5
Kilian Valkhof @kilianvalkhof.com · 05/06/2026
Yes, I'm working on getting the fancy new standard.site preview thing into @polypane.app Step 1 is automatically fetching the AT protocol records you define:
Expanded site.standard.publication and site.standard.document records
1241 24
Kilian Valkhof @kilianvalkhof.com · 05/06/2026
Had a really good time at Devsum in Stockholm these past few days. Excellent mix of topics, great speakers and a nice community vibe. Definitely recommended!
Kilian in front of a time table pointing at his season and smiling
270 7
Kilian Valkhof @kilianvalkhof.com · 01/06/2026
On my way to Stockholm for Devsum, really looking forward to the conference and to visiting Stockholm again. And it’s off to a good start, I got assigned the exit row seat!
1240 24
Kilian Valkhof @kilianvalkhof.com · 28/05/2026
I don't know what all the fuss is about. Seem pretty accurate to me.
Google search asking "how many ps are in polypane" and the result is:

AI Overview
There are 2 'p's in the word "Polypane".They are the first letter (P) and the seventh letter (p):
P - o - l - y - p - a - n - e
3180 18
Kilian Valkhof @kilianvalkhof.com · 27/05/2026
Looks like I can also improve things by working around Cloudflare's hotlink protection, so that's also going on my list. Anyway, next release will show image dimensions, file size and warnings or errors along with recommendations when they fall outside of specified ranges.
og:image
https://cdn.simianprint.nl/reclameland/productafbeeldingen/182x182_balie-displays.webp 
182×182px, 27.9 KB
Image below 200×200px are unsupported. Recommended dimensions are 1200×630px.
281 8
Kilian Valkhof @kilianvalkhof.com · 22/05/2026
Anyway, next version of @polypane.app supports emulating text-scale.
Two panes, one with emulation options visible. There is a red outline around a dropdown with the text "OS Text-scale" in the settings.
0182 18
Kilian Valkhof @kilianvalkhof.com · 22/05/2026
The issue is focusable SVGs, and I checked, other tab order tool don't get it right either. Step #14 in this screenshot is a focusable SVG. All tools I checked, and current Polypane, skip over it. The next release of Polypane correctly lists it! And for good measure, I also made it update faster
Two Polypane panes, one small and one large, showing the Polypane homepage with a tab order overlay on both.
031 3
Kilian Valkhof @kilianvalkhof.com · 20/05/2026
Drake meme with 'No' to 'Educate developers' and 'Yes' to 'Educate slop generators'
5738 73
Kilian Valkhof @kilianvalkhof.com · 13/05/2026
Figured I'd give this a try and see how far I can push the sync engine in @polypane.app by having it run cssDOOM.wtf. The screen dimensions have a slight influence on speed and direction but other than that it just works. 😄 cc @html5test.com
1285 28
Kilian Valkhof @kilianvalkhof.com · 11/05/2026
honestly I would've doubled down.
bluesky preview but instead of the "liverpoo" typo it now says "liverpoopoo"
030 3
Kilian Valkhof @kilianvalkhof.com · 08/05/2026
Playing around with the new CSS random() function in Polypane 29. It's super powerful! @alvaromontoro.com already did a nice article about it: alvaromontoro.com/blog/68092/n... but I think I'll make one too just to show off some cool demos like the one below.
0213 21
Kilian Valkhof @kilianvalkhof.com · 04/05/2026
Look I don't wanna brag but....
Audit complete
Target: https://polypane.app

Original Score 100%
Remediated Score 100%
170 7
Kilian Valkhof @kilianvalkhof.com · 01/05/2026
✅ Nerd sniped Coming to @polypane.app soon.
The @Polypane.app console showing $$("form") returning two elements but $$("form") returning three.
0160 16
Kilian Valkhof @kilianvalkhof.com · 14/04/2026
Many people love the rich features that Polypane's screenshot and recording editor has. You'll be hard-pressed to find a more feature-packed and elegant editor. That's all powered by Pintura by @rikschennink.com. I just happily renewed my license so I can keep getting the updates Rik puts out ❤️
1183 18