Josh W. Comeau
@joshwcomeau.com
22K followers 400 following 2.3K posts
Indie developer and educator. Blogging at http://joshwcomeau.com. Previously at DigitalOcean, Khan Academy. Taught at Concordia Bootcamps. He/Him 🌈
Posts Media Videos Starter Packs
joshwcomeau.com
Here’s another one, from Max. Love the patterns when they layer! 💖
joshwcomeau.com
(This was created by someone named Numer, and honestly they went beyond what the course covers at this point. Though this is exactly the sort of thing I expect people to be able to create after the full course!)
joshwcomeau.com
✨ Folks have been going through my Whimsical Animations course for a couple of weeks now, and they’re starting to share some of the stuff they’ve created. It’s *so cool* getting to see what people come up with!

For example:
joshwcomeau.com
Well that’s disappointing. 😕
nicomaramckay.com
tl;dr: Bluesky began with genuine promise: a new social media platform where users could feel safer, but inconsistent moderation quickly eroded trust.

When systemically marginalized users pushed back, Bluesky’s leadership minimized concerns and began to target them for bans.
Bluesky’s CEO meltdown: How leadership continues to fail its most marginalized users
tl;dr: Bluesky began with genuine promise: a new social media platform where systemically marginalized users could feel safer, but…
plutopsyche.medium.com
joshwcomeau.com
Quiet y’all, my show is on! 🍿
codetv.dev
Now streaming for everyone: 3 teams of devs had 4 hours to build apps that use something other than a keyboard or mouse for input. @leonnoel.bsky.social, @ericaxtech.bsky.social, @kentcdodds.com, @joelhooks.com, Billy, & @zig.computer took the challenge

Watch now: codetv.link/wdc/s2e10
Reposted by Josh W. Comeau
piccalil.li
Set your alarms and clear your inboxes: JavaScript for Everyone launches in 7 days, on October 14th.

The drafts are done, the editing is *nearly* complete and let us tell you, Mat has written a masterpiece.

Get alerted on launch day by signing up for updates: piccalil.li/javascript-f...
JavaScript for Everyone. A new course by Mat Marquis. Launching in 7 days
Reposted by Josh W. Comeau
sarahedo.bsky.social
💥 did a small drawing explaining the JS execution model including the event loop. I hope it’s helpful to folks. Debugging is always easier when the underlying implementations are understood.
Drawing explaining the JS execution model and event loop
Reposted by Josh W. Comeau
fraying.bsky.social
Fuck apps - build websites.
josephcox.bsky.social
New from 404 Media: Google removed an ICE-spotting app too. Called Red Dot, an immigration support group on the ground in Chicago told me it was using it. Google now removed, just like Apple did with ICEBlock after DOJ pressure. Google calls ICE vulnerable group
www.404media.co/google-calls...
Google Calls ICE Agents a Vulnerable Group, Removes ICE-Spotting App ‘Red Dot’
The move comes as Apple removed ICEBlock after direct pressure from U.S. Department of Justice officials and signals a broader crackdown on ICE-spotting apps.
www.404media.co
joshwcomeau.com
I also really like using em dashes. 😂
joshwcomeau.com
It’s so frustrating to me, because I’ve been using purple gradients for a long time! It’s a lovely color and it’s irritating that AI has appropriated it. 😅

This is the earliest example I can find, something I built in 2017:
A website with a purple-to-blue gradient background
joshwcomeau.com
I’ll be speaking in Toronto in a couple of weeks! It’ll be on animation design, and some of the cool things we can do to make our websites/webapps more whimsical. ✨

fitc.ca/event/webu25...
Web Unleashed 2025 // October 21-22 // Toronto & Online
The ultimate conference for front-end dev experts
fitc.ca
Reposted by Josh W. Comeau
jacksleight.com
Thoroughly enjoying @joshwcomeau.com 's Whimsical Animations course! And because I wanted extra work for some reason I’m also doing alpinejs.dev versions of all the exercises.
joshwcomeau.com
Very cool! I think having to translate the concepts like that will actually help them stick in memory even better 😄
Reposted by Josh W. Comeau
fionchadd.bsky.social
It's live! My absolute favourite site I've *ever* built and probably will ever build.
abhamilton.com
Tentacles! Plants with mouths! Hairy squiggles! It's got the lot.
Home
This is the website of AB Hamilton. Their first book, Beastwoven, will hit the shelves in October 2026.
abhamilton.com
Reposted by Josh W. Comeau
kevinpowell.co
Do you have any smaller/under-the-radar CSS sites/people that you follow?

Looking for blogs, YouTube channels, or anyone who just shares cool CSS stuff.

Reply if you know any, and look at the replies for new people/sites to follow 😊
joshwcomeau.com
The ghosts are so cute! 😄

I also hadn’t heard of this October thing but that’s a super fun idea 😄
Reposted by Josh W. Comeau
keith.is
..... no that is not what i am mean to do
joshwcomeau.com
Woohoo! Welcome aboard 😄
Reposted by Josh W. Comeau
Reposted by Josh W. Comeau
neorsd.org
I’m a sewage system. I also have a great personality.
Elizabeth Jacobs, PhD
@elizabethjacobs.bsky.social
I'm an epidemiologist. Sewage systems are sexy.

Dosco Jones @doscojones.bsky.social
I'm an engineer. Sewage systems are sexy.
joshwcomeau.com
Thanks for sharing, Una! ❤️

And yeah, I’m so excited for CSS functions! It’ll be so nice for stuff like that.
Reposted by Josh W. Comeau
una.im
Really nice example of CSS functions from @joshwcomeau.com in his Whimsical Animations course (todays the last day to register early access!)

Immediately optimized my radial popover menu with it 🙂

Demo: codepen.io/una/pen/YPwW...
Course: t.co/14NmSUHFs3
My functions post: una.im/5-css-functi...
@ function --polar-coordinate(--angle, --dist) {
  result: translate(
    calc(cos(var(--angle)) * var(--dist)),
    calc(sin(var(--angle)) * var(--dist))
  );
}
joshwcomeau.com
Ah, glad to hear it! That’s very validating 😄

I extended it for 27 hours, so it ends tomorrow at 8pm ET (UTC -04:00). If you need a bit more time, you can also shoot me an email ([email protected]), I’m happy to offer extensions for folks who just need a bit more time!