Kristóf Poduszló

Kristóf Poduszló

@kripod.dev

Software engineer with a special interest in accessibility. Builds for the web, mainly using React and Tailwind CSS nowadays.

105 followers278 following50 posts

Today marks the first illegal Budapest Pride march 🏳️‍🌈 🇭🇺 Just a reminder how brittle democracy can be, despite the citizens becoming more inclusive over time. Evil triumphs when the good do nothing…

Josh Collinsworth@collinsworth.dev

For as long as I live, I'll never get over the fact that we've walked on the moon, harnessed the sun's power, and made it possible to send messages around the planet in mere seconds... ...yet we're still so stupidly primitive we think where you were born should determine what rights you have.

Kristóf Poduszló reposted

Here's the math needed to adjust a color's lightness and eliminate the gray area where WCAG2 and APCA conflict on black/white foregrounds. Yes, it's CSS. And yes, it's blazingly fast. Usage: background: oklch⁠(⁠from⁠ ⁠<⁠color⁠>⁠ ⁠var⁠(⁠-⁠-⁠_⁠ak⁠-⁠safe⁠-⁠l⁠)⁠ ⁠c⁠ ⁠h⁠)⁠;

Haz@haz.dev

I spent hours exploring the color ranges where APCA and WCAG2 contrast algorithms differ. Then I found a site that shows these discrepancies, with the gray area of the chart marking the disagreement range. That's the zone Ariakit Styles will avoid. Thank you so much, Lloyd Kupchanko!

Reduce should never be used with a non-primitive accumulator imo. We have more semantic alternatives like: • Object.fromEntries() + entries​.map() • Object.groupBy() / Map.groupBy() Even for primitives we’ll have Math.sumPrecise() soon ⏳ github.com/tc39/proposa...

github.comGitHub - tc39/proposal-math-sum: TC39 proposal to add a summation method to JavaScriptTC39 proposal to add a summation method to JavaScript - tc39/proposal-math-sum
Wes Bos@wesbos.com

I love Array.reduce, but I find myself writing less of them as the browser primitives get better. Map + Object groupBy is one place you can now get rid of reduce for www.youtube.com/watch?v=1bfK...

Visually-hidden elements should be preferred over explicit labeling. Despite being aware of that, I could never explain the “whys” before this article.

Ben Myers@benmyers.dev

📝 New post! `aria-label` and `aria-labelledby` aren't allowed on divs, spans, and other static text elements out of the box, and *most* screenreaders won't announce them. #accessibility #a11y

Just upgraded kripod.dev to Astro v5. While the migration took some effort, I could pull it off in one go thankfully to the well-written guidelines. It took less than an hour, running stronger than ever 🚀

kripod.devKristóf PoduszlóSoftware engineer with a special interest in accessibility. Builds for the web, mainly using React and Tailwind CSS nowadays.
Astro@astro.build

Astro 5.0 is here. Content layer, server islands, simplified prerendering, type-safe env, @vite.dev v6. All stable. Go see what you can do 👇 astro.build/blog/astro-5/

I wish the @tailwindcss.com will revise some changes before releasing v4, especially concerning accessibility. It’s such a responsibility to get things right at their scale. Perhaps advanced features like breaking out of atomicity might be put behind a flag or at least discouraged by the docs? 🤔

Nmn@nmn.sh

Wrote my own thoughts on Tailwind 4. There’s a lot of good, some ok, and one terrible addition. I also added some thoughts about things that are longstanding issues in Tailwind that should be fixed. nmn.sh/blog/2024-11...

I never really found an ESLint config that’s fairly strict without going overboard So I went through hundreds of core + @typescript-eslint.io rules 1 by 1, hand-picking the severity and options for each. This project culminates all my years of experience with JS/TS so far github.com/kripod/eslin...

github.comGitHub - kripod/eslint-config: Pragmatic ESLint config for robust collaborationPragmatic ESLint config for robust collaboration. Contribute to kripod/eslint-config development by creating an account on GitHub.

The deterministic nature of feeds here feels underappreciated in comparison to X. Finally I don’t lose track of where I’ve been when refreshing. I wish there was a catch-up marker splitting read and unread posts apart, like on Slack.

So ironic how JavaScript is among the most forgiving languages and yet TypeScript offers mind-boggling safety & convenience features built on top of such a flexible base.

“You either die a hero or you live long enough to see yourself become the villain.” Not quite literally but it’s so disheartening to see past role models showing their true colors.

Laurie Voss@seldo.com

True story: 14 years ago I wrote one of the letters of recommendation Guillermo needed to get a visa so he could live and work in this country. And now here he is congratulating the party of mass deportations. What the fuck, Guillermo. What the fuck.

You are up to date.