Keith Cirkel
banner
keithamus.social
Keith Cirkel
@keithamus.social
Software Cyber Shepherd.

Web platform engineer. Participant: WHATWG, CSSWG, ARIAWG, OpenUICG, WebComponents CG

Website: https://keithcirkel.co.uk/
GitHub: https://github.com/keithamus
Mastodon: https://indieweb.social/@keithamus
One problem with the web platform I’m thinking about how to solve: keyboard shortcuts.

I’ve written what I see as the requirements here: github.com/openui/open-...

I want to hear from devs who’ve worked on big apps/sites with shortcuts and see what I’m missing, and how they’ve solved this.
github.com
November 8, 2025 at 5:03 PM
Calling all web developers! Browsers are all meeting up next week (www.w3.org/events/tpac/...). I want your voice to be heard! Tell me your biggest problems, and tell me what you want to see from the platform. What problems are tough to solve, but could be easier?
TPAC 2025 - Hybrid meeting
Our major event of the year gathers our community for thought-provoking discussions and coordinated work.
www.w3.org
November 6, 2025 at 9:44 AM
Reposted by Keith Cirkel
How many lexicon validators will it take for you to finally write your App
October 9, 2025 at 7:08 AM
Sounds like Microsoft are committed to erasing GitHub’s last ounces of positive internal culture. Shuttering water cooler channels, moving the staff to outlook+teams and now telling employees they have to change their GitHub handles, many of whom had accounts predating their employment.
October 22, 2025 at 11:27 PM
This November at the Annual W3C Plenary (TPAC) I'll be discussing "Custom Attributes" github.com/w3c/tpac2025.... I'd like to bring the same lifecycle hooks & subclassing of Custom Elements to attributes. I'd _love_ to hear if developers think this is a good or bad idea, and what they'd like to see.
Custom attributes for all elements · Issue #46 · w3c/tpac2025-breakouts
Session description 2023's breakouts had a discussion on alternatives to customized built-ins. A sketch of a proposal came out around this time: customised attributes. WICG/webcomponents#1029 I'd l...
github.com
October 20, 2025 at 4:08 PM
Reposted by Keith Cirkel
As an experiment, we (the Firefox team) wanted to try a new way to get feedback on which Interop proposals matter most.

So, here's a web app where you can rank the proposals you care about, giving us data we can use when reviewing which ones to champion.

interop-rank.jakearchibald.com
Interop Feature Ranking
Rank the web platform features you care most about
interop-rank.jakearchibald.com
October 9, 2025 at 5:00 PM
Reposted by Keith Cirkel
My friends, foals and follies. Apparently snipping you out of context is not enough to inspire fear. The fodder must change. The horsejs must roam free. Stay safe, and remember to eat your pancakes.
October 7, 2025 at 7:01 AM
London’s food scene is one of the best in the world and this is a hill I will absolutely die on.
I've done nothing but complain about moving to the UK (and in doing so, claim my Britishness) but I will say: London is a way better food city than New York, and anyone that tells you otherwise is a silly billy
October 6, 2025 at 6:05 PM
Reposted by Keith Cirkel
I try not to have any kind of human-like relationship
October 5, 2025 at 3:33 PM
Reposted by Keith Cirkel
waterfall dev cycles are actually entirely correct
October 3, 2025 at 12:26 AM
Reposted by Keith Cirkel
JSX.

Is this something people would be interested in?
October 2, 2025 at 7:05 AM
Reposted by Keith Cirkel
jason object would be a beautiful name for a baby boy
October 2, 2025 at 4:42 PM
I miss @horse_js. I'd enjoy some cutting satire of the JS ecosystem right now.
September 30, 2025 at 10:17 AM
It's impossible to get to inbox zero on GitHub because I got @ mentioned in a couple of spammy repos which are deleted, but the notifications are hanging around in my inbox and I cannot remove them.

GitHub knows this is an issue but don't seem to want to fix it so... 🤷
September 30, 2025 at 8:10 AM
Reposted by Keith Cirkel
Web component folks: A common feature with request is to "inherit from a button". If that's something you want, which specific button behaviours is it you want to inherit? Why is putting a button in the shadow root not the answer?
September 29, 2025 at 12:12 PM
Ahhh. Always nice when you can add ~180LOC to your ~100kLOC codebase and make it go twice as fast.

github.com/csskit/csski...
September 23, 2025 at 9:13 PM
Reposted by Keith Cirkel
🎂 Happy 23rd birthday, Firefox

(Firefox 1.0 was released on November 9, 2004 but the first version of the thing that lead up to it – Phoenix 0.1 – was released on September 23, 2002)
September 23, 2025 at 1:56 PM
Reposted by Keith Cirkel
`field-sizing` on `<input>` is really handy for groups of editable chips!
September 12, 2025 at 6:26 PM
Does anyone reading this skeet work on (or know of anyone who works on) www.gov.uk/alerts?

The list of alerts is only available as an Atom feed which relies on XSLT to display in the browser, and there appears to be no proper HTML alternative (the link rel=alternative goes to the homepage).
About Emergency Alerts
Your mobile phone or tablet may get an emergency alert if there’s a danger to life nearby. Alerts tell you what to do to stay safe.
www.gov.uk
September 9, 2025 at 9:13 AM
Reposted by Keith Cirkel
Composition with the Shadow DOM is more powerful than you think. You can do a lot with the default named slot assignment, but manual slot assignment is a pathway to many abilities some consider to be… unnatural.</emperor-palpatine>
An intro to manual slot assignment – Nathan Knowler
knowler.dev
September 3, 2025 at 8:13 PM
Reposted by Keith Cirkel
👀 commandfor - enabled by default in Firefox 144

Soon, in all browsers, you won't need any JS to open a popover / dialog 🎉

More info in @keithamus.social post here: developer.chrome.com/blog/command...
September 2, 2025 at 2:26 PM
Reposted by Keith Cirkel
Has anyone seen any neat uses of the command/commandfor API yet? Any component libraries that support custom command events? Even just anyone whose tried them and wrote about their experience?
August 30, 2025 at 11:02 AM
The thing about working on a big project like "the last CSS toolchain we'll ever need, built from ground up" is that there's a literal endless list of all the things that need doing.

I've found myself knee deep in ASM, to writing tech docs, to dreaming up new syntax.

github.com/csskit/csskit
GitHub - csskit/csskit: Refreshing CSS
Refreshing CSS. Contribute to csskit/csskit development by creating an account on GitHub.
github.com
August 26, 2025 at 9:58 PM
Reposted by Keith Cirkel
Yay! It's the first Firefox release since I've joined the team, so let's take a look at some of the new developer-facing features in Firefox 142… 🧵
August 22, 2025 at 9:55 AM
Reposted by Keith Cirkel
View Transitions are enabled by default in Firefox Nightly, so they're on their way to stable. Give it a test with your current transitions, and give me a shout if anything doesn't look right.
August 21, 2025 at 8:16 AM