Paul Kinlan reposted
Paul Kinlan
Paul Kinlan
@paul.kinlan.me
Lead for Chrome Developer Relations at Google. Web Developer. Avid user of AI tooling. I live in the beautiful town of Rhuthun in North Wales. Learning Welsh and loving Wales. https://paul.kinlan.me/ and https://aifoc.us/
2.2K followers619 following617 posts
Paul Kinlan reposted
The `unload` event no longer fires in Chrome by default! Since the advent of the mobile web this has become increasingly unreliable and we think that's a footgun for devs who might think it works. We've spent the last 3 years carefully removing it from Chrome. developer.chrome.com/blog/unload-...
Paul Kinlan reposted
What do you want us to work on in 2027? Here's a web app where you can rank the Interop proposals you care about, giving us data we can use to prioritise feature development. interop-rank.fxdx.dev
Paul Kinlan reposted
A little summary of my experience at Fronteers Dark Mode, a breakdown of the header effect of my demo, and a tiny bit of yapping at the end on existential dread in the age of AI 💁🏻♀️ @fronteers.bsky.social cydstumpel.nl/demo-deep-di...
Paul Kinlan reposted
Replying to @kilianvalkhof.com
Here, a demo that compares the 4 values: codepen.io/editor/bramu... (`chain` is new; Chromium only for now)
Paul Kinlan reposted
Paul Kinlan reposted
Replying to @rviscomi.dev
Credits for this release: dark mode toggle, @supports, CSS reorg by @lea.verou.me INP + media lazy-loading by @malchata.bsky.social WebOTP + passkey updates by @agektmr.com OS text scale by @sturobson.com exit animations by me WebMCP by François Beaufort and Kasper Kulikowski
Paul Kinlan reposted
Paul Kinlan reposted
How to capture device audio on the web today? 🎵🔊 getUserMedia() is not for audio only and forces users to go through a screen sharing option. Not great for audio use cases (notetaking, music, ...) We want to fix this. We have a proposal and would love your input ♥️
Paul Kinlan reposted
After 7.5 months of tweaking, reviewing, and rewriting, the docs for Scroll-Triggered Animations have landed on @developer.mozilla.org (MDN)! → developer.mozilla.org/en-US/docs/W... Congrats and thanks to Chris Mills and @estelle.bsky.social for their hard work and sweating the details on this!
Paul Kinlan reposted
Paul Kinlan reposted
Connection Allowlists announcement blog post has been published. developer.chrome.com/blog/connect...
"Connection Allowlists," a browser-level security mechanism that blocks any outbound network communication not matching your permitted URL patterns, is now available starting in Chrome 152.
In my post "damn Claude, that's a lot of commits" aifoc.us/damn-claude-thats-a-lot-of-commits/ I found that in March, users of Claude made about 2.6 million public, Claude attributed commits a week. I just ran the same script again, it's now about 7m a week (in just 6 months)
Would be interesting to compare and contrast this with India. In my short time in both countries (but continuously speaking to Devs) the tone and expectation feels very different than Europe and US
In China, recent warnings about existential AI risks are seen as distinctly Western or as a ploy to stop Chinese AI companies from overtaking their US rivals (Lily Kuo/New York Times) Main Link | Techmeme Permalink
Paul Kinlan reposted
🆕 Customize MDN's browser compat tables! Press ⚙️ Settings on any compat table to choose which browsers and engines you see, and hide the ones you don't need. Your picks are saved in your browser. Try it 👇 developer.mozilla.org/en-US/docs/W...
Paul Kinlan reposted
Replying to @paul.kinlan.me
For some history: github.com/w3c/csswg-dr... I’m so glad it’s finally happening, it’s much safer adding 3rd party content in an iframe, than a script with no restrictions.
Great seeing responsively sized iframes landing in Chrome - developer.chrome.com/blog/respons... In my post "The browser is the sandbox", I said: "We need a way to size the outer-iframe (or iframes in general) that doesn’t rely on access to iframe.[...].innerHeight and sandbox='allow-same-origin'"
Post here: aifoc.us/the-browser-... This is the start of that. I'm happy this is starting to land. As we generate more UIs dynamically, we need the sandbox to improve and we need to improve how iframes work so we don't accidentally introduce user-land sandbox escapes to improve the UX of sites.
Paul Kinlan reposted
Another week, another package: show-keystrokes.netlify.app The native app I typically use to display keystrokes on the screen is disallowed by a corp policy. So I wrote a component to fill that gap. Embed it on your site and you’re good to go.
If you are in Developer Marketing and love building on the Web, our awesome Developer Marketing team is hiring. Come and help us create content that inspires developers and builders to build the next generation of web experiences. www.google.com/about/career...
Paul Kinlan reposted
Modern Web Guidance v0.0.187 brings new and updated guides and Codex plugin support → goo.gle/4harAXQ ✨ New guides: progress rings, scrollspy nav menus, loading spinners 📝 Updated guidance to avoid bfcache breakage and unwanted inline layout gaps 🔌 Added plugin manifest support for Codex
It's been amazing to see this come to life. I was also pleased to see devtools which highlights the ads on a page too
We just launched experimental ad metrics in the Chrome User Experience Report (CrUX): - Ad Count - Ad Density - Ad Weight: Network - Ad Weight: CPU These metrics are a set of ad-related measurements that provide transparency into sites' ad experiences. developer.chrome.com/blog/crux-ad... 1/8 🧵
Paul Kinlan reposted
Every site owner running ads (especially a lot of ads) should run this TODAY :) -> Google debuts ‘ad detection tool,’ letting marketers better assess ad experiences in Chrome "We’ve all encountered overwhelming ad experiences on the web,”...
Paul Kinlan reposted
Looks so good it's like the colour palette was designed solely to create this image.
Susan Kare is one of the greatest designers ever and this new talk from her is just fantastic, it's a must watch I had never seen this wallpaper she designed using the 16 (bad) original Windows colors, it's absolutely stunning www.youtube.com/watch?v=YEvL...
Paul Kinlan reposted
AI Assisted Web Development, by @bandarra.me (@paul.kinlan.me): https://aifoc.us/ai-assisted-webdev/?ref=frontenddogma.com #ai #processes
Before I ran out of Fable usage, I was trying to create practical #webai demos for every model on @hf.co Check out paulkinlan.github.io/web-ai-showc... and some of my favourite demos: paulkinlan.github.io/web-ai-showc... paulkinlan.github.io/web-ai-showc... paulkinlan.github.io/web-ai-showc...
So I built a skill whose goal is to hill climb until it validates that each demo works correctly. It's fun to watch our new tooling (coding agents) be so incredibly thorough and just able to keep chugging away. I also tried to encode best practices too: paulkinlan.github.io/web-ai-showcase/
Before I ran out of Fable usage, I was trying to create practical #webai demos for every model on @hf.co Check out paulkinlan.github.io/web-ai-showc... and some of my favourite demos: paulkinlan.github.io/web-ai-showc... paulkinlan.github.io/web-ai-showc... paulkinlan.github.io/web-ai-showc...
Paul Kinlan reposted
Blink: Intent to Prototype: Declarative fragments
Paul Kinlan reposted
🔥 New blog post: In defense of polyfills A highly influential spec editor expressed the opinion that polyfilling is harmful. I beg to differ. lea.verou.me/blog/2026/po...
Exciting to be here in Bengaluru. The Livestream has started, where I will be giving a keynote with Swetha about Chrome and the Web. It will be fun. We've got a lot of great partners to talk about and some fun things to demo www.youtube.com/live/y4AHfhP...
Paul Kinlan reposted
"I learned the hard way how to design useless APIs. I still remember how I would spend most of the time making sure that my API was mapping the underlying data model. Or, how I would obsess over the details of the API definition." apichangelog.substack.com/p/the-most-i...
How might a Lighthouse testing tools work with LLMs and Agent harnesses. aifoc.us/how-might-a-... I had a lot of fun building this, and I think that this is one very useful and practical way web dev, loops and goals will change this year
One of the best skills that no one knows about: Probably one of the best skills that no one knows about: github.com/ChromeDevToo...
Can the presence of a URL in an LLM prompt influence the output based on the content of that URL? I think, yes! But it took me weeks of experimentation and I learnt a lot about what User Agents do and what data is in the models aifoc.us/influencing-...
Paul Kinlan reposted
Hi, friends. The last 6 years have been a blast, but I just don't like being on The Internet anymore. I'm leaving DevRel, and I wrote a little bit about why. Look after yourselves, and each other. Love, Salma
Paul Kinlan reposted
I spent some time this morning playing with their endpoints ... I genuinely believe this is the first time that a google account and facebook account interoperate in an unified account chooser that websites can use to login to their websites.
Facebook just recently exposed themselves as a FedCM IdP!! developers.facebook.com/documentatio... I think this is pretty awesome, including to the atproto ecosystem, because it one more step towards making IdPs interoperate with one another!
Paul Kinlan reposted
Facebook just recently exposed themselves as a FedCM IdP!! developers.facebook.com/documentatio... I think this is pretty awesome, including to the atproto ecosystem, because it one more step towards making IdPs interoperate with one another!
Paul Kinlan reposted
Brilliant find, have added Claude back into my Real LLM Bot IP? Tool, so you can see if it's really Claude come a crawlin` tamethebots.com/tools/real-l...
One of the best changes to HTML IMO in a long time. This API (well, maybe it's not an API) has the chance to change how we build sites - and it's an actual good use for the <template> element :D
The first part of Declarative Partial Updates (`<template for>` out-of-order HTML) is now available, unflagged, in Chrome 150!! developer.chrome.com/release-note... The second part (the new JS setting APIs, include the streaming ones) we're still working on the spec side, but maybe for Chrome 152?
One of the most underrated events in Chrome. Helps you work out if autofill actually helps your users (hint, it does in nearly every case)
Does your site handle varying types of #autofill data? Transform address forms for different countries? The "autofill" event lets you hook in *before* the browser fills the form to update your form to fit the data.