Sign in

Josh W. Comeau

@joshwcomeau.com
24K followers 655 following 3.1K posts

I make websites and maybe games? Blogging at joshwcomeau.com. He/Him 🌈

PostsRepliesMedia
Josh W. Comeau @joshwcomeau.com · 29/09/2026
I was recently introduced to straw.page, a maximalist Geocities-inspired drag-and-drop website builder. Apparently it's most popular with Gen Z, and it makes me so glad to know this sort of spirit lives on. 😄 🧵 A few examples in-thread.
straw.page
Straw.Page
Straw.Page is the world's simplest website builder. Create unique websites from your mobile device.
68514
Reposted by Josh W. Comeau
laura - wishlist my game! @freezydorito.lol · 29/09/2026
remember my burger game? its' coming out in TWO DAYS. Go wishlish it and throw me some cash when it's out pls pls store.steampowered.com/news/app/514...
store.steampowered.com
You Should Consider Making a Burger EX on Steam
HOW HIGH WILL YOU STACK IT? Drop ingredients as high as you can, get powerups, unlock new burgers, that's really all there is to it.
1158
Reposted by Josh W. Comeau
Sean Lynch @techniq.dev · 15/09/2026
🎉 Introducing npmchart.com Analyze npm packages (downloads, releases), Github activity (releases, stars, commits, issues, PRs), compare packages, user pages, download or copy any charts, and more!
118320
Reposted by Josh W. Comeau
nolen @itseieio.bsky.social · 21/09/2026
I made multiplayer Windows 98 Solitaire. It's called Solitaire Alone Together. You can play together, with the whole internet, but you can't chat or talk. solitairealonetogether.com
9486176
Reposted by Josh W. Comeau
danielroe @danielroe.dev · 19/09/2026
don't be nice.
roe.dev
Don't be nice
Sometimes, it's more important to be good than it is to be nice.
41734246
Reposted by Josh W. Comeau
Keith Kurson @keithlaugh.love · 18/09/2026
keith.is/post/digital... I have fully canceled my D/O account 😡
keith.is
DigitalOcean has $3 million for DHH and nothing for CSS-Tricks
A week and a bit on UpCloud, deleting my DigitalOcean account after more than 10 years, and what DigitalOcean is doing to CSS-Tricks, one of the best places on the whole internet.
313535
Reposted by Josh W. Comeau
SonderingEmily ✨️ wishlist Lily's World XD @sonderingemily.bsky.social · 17/09/2026
lily's world XD is OUT at a 20% discount! 🖥️Investigate a missing girl's laptop 👻Psychological horror ❤️Heartfelt story about body image, growing up, and childhood friendship PLAY NOW 👇
914658
Reposted by Josh W. Comeau
Chris Coyier @chriscoyier.net · 15/09/2026
This GIF from @joshwcomeau.com's last email is mesmerizing. Here's the border-shape he made of that codepen.io/editor/joshw...
1839
Reposted by Josh W. Comeau
CSS by T. Afif @css-only.dev · 16/09/2026
📝 New CSS Article! Learn how I used Scroll-Driven Animations and other modern features to extract various information from a CSS grid. blog.master.dev/extracting-g... Another article to show that CSS is more than a simple set of properties/values.
blog.master.dev
Extracting Grid Information Using CSS
It's an interesting and potentially useful trick to have an element know where it is on a grid. That's tricky enough when the items are in one row/column, but what about when they span?
0445
Reposted by Josh W. Comeau
CSS by T. Afif @css-only.dev · 15/09/2026
We should have been writing articles and having fun with CSS, but instead... We can't do much against big corporations (except wait), so let's give Geoff some support. Share (or try) his HTML/CSS course: thebasics.dev 100% human-made by the one who edited 86945 CSS articles!
Screenshot of the provided link
06624
Josh W. Comeau @joshwcomeau.com · 14/09/2026
Newsletter issue is live! It's basically a mini blog post that explores two awesome up-and-coming CSS properties. ✨ I also decided on a whim to include a coupon code for my courses in there. 😄
joshwcomeau.com
Two lovely brand-new CSS properties ✨ • Josh W. Comeau
Friendly articles and tutorials for front-end web developers. ❤️
1231
Josh W. Comeau @joshwcomeau.com · 13/09/2026
✨ I'll be sending a special edition of my newsletter tomorrow that explores what we can do with the new `corner-shape` and `browser-shape` CSS properties. I’ve been doing a lot of experimentation this summer and I’ve discovered some pretty cool stuff. 😄 You can sign up here:
joshwcomeau.com
Join my newsletter! • Josh W. Comeau
Friendly articles and tutorials for front-end web developers. ❤️
4571
Reposted by Josh W. Comeau
Keith Kurson @keithlaugh.love · 13/09/2026
The snail now crosses my header over the course of the week (and you can feed the piggy lots more now fyi) keith.is
3315
Reposted by Josh W. Comeau
Agustin Capeletto @lowpoly.gg · 13/09/2026
Here's my take on @ivorjetski.bsky.social's LED Art Challenge! I experimented with perspective and blend modes. It's CSS-only 💚 Try it: codepen.io/editor/alowp...
1486
Josh W. Comeau @joshwcomeau.com · 12/09/2026
Love this project from @kaleidosium.my.id. It's an introduction to HTML/CSS specifically for artists. 😄 Tailored educational resources like this are the best. We can construct way better explanations for things when we can anchor it to a shared fundamental base of knowledge, vs. a general audience.
modern-html-and-css-for-artists.netlify.app
Modern HTML & CSS Guide for Artists
A craft-focused, two-part guide covering modern HTML and CSS fundamentals for artists and other creatives.
2486
Reposted by Josh W. Comeau
Patrick Brosset @patrickbrosset.com · 11/09/2026
Interop 2027 prep is now. Want to help? 1. Go to developer-signals.rviscomi.workers.dev 2. Sign-in using GitHub 3. Find features you need 4. Click the comment icon, add your use case 5. Submit There aren't many ways to tell browsers what you need and why you need them. That's a very effective one.
The website, showing a list of web features and a search tool. The title says Shape what browsers build next. The github sign-in button is highlighted as step 1. The speech bubble icon on one of the features is highlighted as step 2.The website, a feature has been selected, and the Provide developer signal dialog is displayed. The use case text input field is highlighted as step 3. The workaround text input field is highlighted as optional. And the submit button is highlighted as step 4.
32311
Reposted by Josh W. Comeau
Bramus @bram.us · 11/09/2026
🤩 Safari is about to support `interactive-widget` in the viewport meta tag github.com/WebKit/stand... This allows you to control what should happen to the viewport when the virtual keyboard gets shown. developer.chrome.com/blog/viewpor... (from 2022!) has the details.
MobileMiniBrowser showing a test page set to `overlays-content`MobileMiniBrowser showing a test page set to `resizes-visual`MobileMiniBrowser showing a test page set to `resizes-content`
45013
Josh W. Comeau @joshwcomeau.com · 09/09/2026
Disappointing but honestly not surprising. DigitalOcean has never exactly been a beacon of moral clarity.
4696
Josh W. Comeau @joshwcomeau.com · 08/09/2026
I've been using border-shape a ton for an Electron project I'm working on and it's just the best thing ever. Well worth a vote!
2373
Reposted by Josh W. Comeau
Bramus @bram.us · 07/09/2026
Back in June I shared a demo of a grid that smoothly animates on resize without JS or View Transitions. I finally sat down to write up how it works: CSS Anchor Positioning + scoped anchors + regular CSS transitions. → brm.us/animated-grid
410710
Josh W. Comeau @joshwcomeau.com · 05/09/2026
✨ Neat CSS trick ✨ We can use `width: fit-content` to have a container element shrink to fit its element's width. This is useful for cards! But if that card has any text content, that text will blow out the width of the card, since it won't automatically linewrap. So we wind up with this issue:
A card containing a cat image and a single long line of text.
4705
Reposted by Josh W. Comeau
Jake Archibald @jakearchibald.com · 04/09/2026
Playing around with an idea: responsive code. The build script creates up to 5 versions of each code sample using Prettier, and a container query displays the right one. Brotli means the filesize overhead is very small. Live demo: jakearchibald.com/2026/css-cus...
1728928
Josh W. Comeau @joshwcomeau.com · 03/09/2026
This is a *wild* thing to send to your employees. Just canceled my 1Password business subscription. It was super easy to switch, literally just exported my archive and imported it into ProtonPass. Took 2 minutes, and it'll save me ~$100/year.
723326
Reposted by Josh W. Comeau
Bramus @bram.us · 03/09/2026
The 3 LGTMs are in! CSS random() officially coming to Chrome 155 (due early October)! 🎉
67114
Reposted by Josh W. Comeau
beetle moses @beetlemoses.bsky.social · 02/09/2026
Two panel comic. Panel 1: breaking news drone footage of an overturned truck with a giant barrel in place of a cargo bed, floating in a body of water. A fire truck and some locals surround the scene. On screen text reads: “BREAKING; Whisky truck crashes into Loch Ness” Panel 2: the Loch Ness monster is facedown in a bush, totally passed out. A local Scot security guard is passing by in a golf cart. He exclaims, “Crikey— what’s this!?”
5471881228
Reposted by Josh W. Comeau
Bramus @bram.us · 02/09/2026
Way back in 2005, I used a Flash PageFlip component to display a book on a website. Ever since, recreating a modern version has been on my backlog to investigate. With the arrival of HTML-in-Canvas (experimental), we can finally bring it back — this time using real HTML. → brm.us/hic-pageflip
5686
Josh W. Comeau @joshwcomeau.com · 29/08/2026
I'm doing something absolutely ridiculous. 😂 I created a `RasterizedSvg` component that will render an SVG as though it was a raster image, letting us see the pixels if we scale it up. Left: original SVG Right: rasterized SVG
A brown-and-yellow shield icon, sharp and crispThe same brown-and-yellow shield icon, except now it's made up of chunky pixels, roughly 24 by 24
81737
Reposted by Josh W. Comeau
CSS by T. Afif @css-only.dev · 18/08/2026
An interactive demo showing how all the values adjust in real time as the grid is resized. codepen.io/t_afif/full/... via @codepen.io All the values are integers, so you can use counters to display them.
1599
Reposted by Josh W. Comeau
Ian Scott @polpo.org · 17/08/2026
Tower by Adam Basanta (2026) www.adambasanta.com/tower.php
8480133
Reposted by Josh W. Comeau
Chris Coyier @chriscoyier.net · 23/08/2026
I actually strive for perfect clarity with my color theme pickers. codepen.io/editor/chris...
2265274
Reposted by Josh W. Comeau
🐴 Alex Trost @trost.codes · 24/08/2026
Public Service Announcement - these pill bottle timers are fantastic if you're the type of person who takes pills and then forgets if you've taken said pill.
A prescription pill bottle with a special cap that has a timer on it, showing when the bottle was last opened.
4776
Reposted by Josh W. Comeau
Patrick Brosset @patrickbrosset.com · 23/08/2026
Great news! The CSS sibling-count() and sibling-index() functions are now Baseline Newly Available! I.e implemented in all major browsers.
web-platform-dx.github.io
sibling-count() and sibling-index() - Web platform features explorer
The sibling-count() and sibling-index() CSS functions return integers that are useful to style elements based on their positions among siblings or on the number of siblings, for example as part of a c...
413930
Reposted by Josh W. Comeau
Philip Gourevitch @pgourevitch.bsky.social · 22/08/2026
Trump imposes crushing new taxes on American consumers & businesses - compounding the toll of his failed unprovoked war with Iran by escalating his failed unprovoked trade war with our longtime staunchest ally and trade partner, and advancing global disorder. www.nytimes.com/2026/08/21/w...
nytimes.com
Canada-U.S. Trade War Escalates as Talks Collapse
Intense negotiations to stave off new levies by the Trump administration ended in an impasse as Mark Carney suspended talks. U.S. tariffs on Canada, and retaliatory tariffs on the U.S., will come into...
20438153
Reposted by Josh W. Comeau
Jason Lengstorf @jason.energy · 19/08/2026
The Full Stack season 1 finale is tonight! 8 teams started, 3 teams remain — and tonight, only 1 team can win watch live at 6pm Pacific: www.youtube.com/watch?v=5EnK...
youtube.com
SEASON FINALE — Impress the judges · The Full Stack
YouTube video by CodeTV
1229
Reposted by Josh W. Comeau
HEALTH @health.band · 15/08/2026
47120753534
Reposted by Josh W. Comeau
beetle moses @beetlemoses.bsky.social · 14/08/2026
Animorphs (1/3)
Page 1, 3 panels. Panel 1: group of friends in a public party setting. A guy asks one of the girls, “you’ve really never heard of Animorphs?” The girl laughs, “never!” Panel 2: later, the girl is now alone and unlocking the door to her apartment. Panel 3: as she enters the apartment, she morphs into a wildebeest. She thinks to herself, “no one can know.”
91152132461
Reposted by Josh W. Comeau
Patrick Brosset @patrickbrosset.com · 12/08/2026
<input type="checkbox" switch> is coming to Chromium-based browsers! My team is currently adding the implementation at chromium-review.googlesource.com/c/chromium/s...
Two switches as seen on iOS. The first one has a default green background. The second one has a custom background set by using CSS.
216121
Reposted by Josh W. Comeau
Annie Sexton @anniesexton.com · 11/08/2026
This is the coolest article I've ever written. Genuinely. All of you should read it.
1329545
Reposted by Josh W. Comeau
Bramus @bram.us · 10/08/2026
When you scroll a 2D scroller on the web, the browser may ignore some minor scroll deltas in the non-main scrolling axis when the user’s intent was to scroll only one axis. Sometimes this “railing” gets in the way … and with `scroll-axis-lock: none`, you can soon remove it 😊 brm.us/scroll-axis-...
28610
Reposted by Josh W. Comeau
Adam Argyle @nerdy.dev · 10/08/2026
#CSS scroll-axis-lock: none unhinged 2d scroll gesture freedom 🤘🏻 nerdy.dev/css-scroll-a...
nerdy.dev
Scroll Axis Lock
Go off the scroll rails with one CSS property
4658
Josh W. Comeau @joshwcomeau.com · 09/08/2026
🔥 The new “Gap Decorations” API allows us to add borders between grid rows/columns and Flexbox children. I spent some time playing around with it and it’s a lovely new feature. 😄 You can learn more on CSS Tricks:
css-tricks.com
Gap Decorations Are Now Available, Here’s What’s New | CSS-Tricks
Today, with CSS gap decorations fully supported in Chrome and Edge, starting with version 149, you can now very easily style gaps, and with a lot of control.
410514
Josh W. Comeau @joshwcomeau.com · 08/08/2026
This game is so so good. If you like puzzle platformers even a little bit you should give it a shot. 😄
1240
Reposted by Josh W. Comeau
IntentToShip @intenttoship.dev · 06/08/2026
Gecko: Intent to prototype: Display Property Animations
groups.google.com
Gecko: Intent to prototype: Display Property Animations
Gecko: Intent to prototype: Display Property Animations
3318
Reposted by Josh W. Comeau
Agustin Capeletto @lowpoly.gg · 06/08/2026
I'm recreating classic screensavers in 3D #CSS, without WebGL. First up: pipes! 🧪 try it: css.graphics/pipes fork it: github.com/layoutit/css...
36915
Reposted by Josh W. Comeau
Kevin Powell @kevinpowell.co · 01/08/2026
Apparently this is a harder question than my others. Those all got 100 answers in ~6 hours or so, this one is sitting at 25... Might be a good sign that things are getting easier I guess 😅
392
Reposted by Josh W. Comeau
Chris Coyier @chriscoyier.net · 01/08/2026
I still think this is a very cool demo. codepen.io/editor/chris... random()-ly positioned "stars" split into three groups via :nth-child() fanciness. Each group moves a different amount by just a single @keyframes mapped to a scroll-driven animation timeline. Not hard!
5513
Reposted by Josh W. Comeau
Scott Tolinski @tolin.ski · 31/07/2026
I’m exploring the mental health effects of AI coding. This is a super quick (blazing fast), anonymous survey. Please fill out and share so that the responses will be well rounded. forms.gle/dpD8Tk1QnXAz...
forms.gle
AI Coding & Mental Health
All answers are anonymous.
1810964
Reposted by Josh W. Comeau
Kevin Powell @kevinpowell.co · 31/07/2026
New question is live! What is your favorite CSS property? asked-100-devs.netlify.app
asked-100-devs.netlify.app
Asked 100 devs: What is your favorite CSS property?
Answer one question. Help decide the top 5.
6163
Josh W. Comeau @joshwcomeau.com · 31/07/2026
This is so antithetical to the whole point of Amnesty International. What a bunch of cowards. 😕 The senior management team needs to resign if there's any hope for this organization.
0411
Reposted by Josh W. Comeau
Eric Bailey @ericwbailey.website · 29/07/2026
I made an app! What Can't I Press helps you discover what keyboard shortcuts are already claimed by running apps, with a focus on screen readers. This helps prevent you from overriding something someone might rely on to get what they want or need. #a11y github.com/ericwbailey/...
github.com
GitHub - ericwbailey/what-cant-i-press: ⌨️ Lists what keyboard shortcuts are claimed
⌨️ Lists what keyboard shortcuts are claimed. Contribute to ericwbailey/what-cant-i-press development by creating an account on GitHub.
1213231