Sign in

Stefan Matei

@stefanmatei.com
566 followers 216 following 388 posts

Web dev, mostly frontend, buildless and with zero dependencies when possible. Web components, modern CSS, and vanilla JS. 🇵🇸 Free Palestine 🔗 stefanmatei.com 🔗 codepen.io/nonsalant 🔗 github.com/nonsalant

PostsRepliesMedia
Reposted by Stefan Matei
Designer Hasan @designer4hasand.bsky.social · 16h
We will never forget..
0116
Reposted by Stefan Matei
IDF Hannibal Brigade @hannibalbrigade.biz · 21h
Three years ago today the IDF carried out the Hannibal Directive, mass murdering their own people to bolster their pretext for the genocide in Gaza
jpost.com
IDF carried out Hannibal Directive, new 'Sword of Damocles' on October 7 | The Jerusalem Post
The Israeli Air Force was carrying out a new 'Sword of Damocles' operation as it was carrying out the 'Hannibal directive,' the IDF's probes found.
217872
Reposted by Stefan Matei
Lea Verou, PhD @lea.verou.me · 03/10/2026
This is exciting. 😍 CSS Mixins and Functions are features that will transform how CSS is written and shared and this makes them usable, today! I'd use these via `@import url(…) supports(not at-rule(@function));` otherwise you get no benefit in browsers that support functions/mixins natively.
1315
Reposted by Stefan Matei
Burton Smith @stuffbreaker.bsky.social · 02/10/2026
Okay, here's some more fun with CSS-only custom elements - layout components! #html #css #webcomponents dev.to/stuffbreaker...
dev.to
CSS-Only Custom Elements for Layouts
Build declarative layouts using CSS-only custom elements
0102
Reposted by Stefan Matei
Daniel Schwarz @dxnny.fun · 23/09/2026
keith.is/post/digital...
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.
032
Reposted by Stefan Matei
Nathan Knowler @knowler.dev · 23/09/2026
Another idea that lets you use range syntax: ```css :root { --tablet: 37.5rem; --desktop: 64rem; --width: 100vw; /* probably need to register this or name the root container */ } @container style(--desktop > --width > --tablet) { p { color: DeepPink; } } ```
082
Reposted by Stefan Matei
Burton Smith @stuffbreaker.bsky.social · 21/09/2026
Lately, I've been exploring CSS-only custom elements. They're pretty rad! #html #css #webcomponents dev.to/stuffbreaker...
dev.to
CSS-Only Custom Elements
Build real, composable web components using markup and CSS, with no JavaScript
8529
Reposted by Stefan Matei
Paweł Grzybek @pawelgrzybek.com · 17/09/2026
This recent article by @bram.us announces a new web component, that is built on top of two superb exciting modern APIs. • CSS Custom Highlight API • OpaqueRange API These two will change the way we build for the web. This post is really worth reading. www.bram.us/2026/09/14/i... #web #css
bram.us
Introducing <rich-input>, a GitHub-like search/filter text input to embed on your site
While working on a side-project to better navigate and search through my record collection, I found myself in need of a rich search input: one that accepts free-form text alongside structured filters ...
0274
Reposted by Stefan Matei
Brecht De Ruyte @utilitybend.com · 08/09/2026
🚀 Container style queries are baseline; New attr() capabilities are nearly there. Neat apart, but together they change how we can wire up components. Practice will make perfect, and I still need to rewire my brain for this combo. So, time to start that rewire. utilitybend.com/blog/contain...
utilitybend.com
Container style queries and advanced attr(): rethinking how to wire up my components in CSS | utilitybend
Wiring HTML attributes into CSS with advanced typed attr(), and letting container style queries pass that state down to child components.
23314
Reposted by Stefan Matei
Vale @vale.rocks · 09/09/2026
Here is my fully documented HTML boilerplate. It is a lean, minimal and solid foundation I use across the sites I develop. Written mostly for me, because I'm sure to forget why I've done things the way I have, but I hope it is of use to you too. vale.rocks/posts/html-b... #HTML #WebDev
vale.rocks
My HTML Boilerplate
A document outlining and explaining my general structure for HTML pages to use. A slim general markup template that applies to almost all HTML documents on the web and forgoes anything unnecessary. It is a general framework to build upon for individual sites.
511015
Stefan Matei @stefanmatei.com · 09/09/2026
This is my mental model for it: Only custom elements (with a “-“ in the name) can be undefined, regular HTML elements can be known or unknown but they’re always defined.
020
Reposted by Stefan Matei
Emanuel Saramago @emanuelsaramago.com · 07/09/2026
The Israel ID system
012
Reposted by Stefan Matei
Zach Leatherman @zachleat.com · 06/09/2026
aarongustafson.github.io/table-sort… from @aaron-gustafson.com is a very good web component!
aarongustafson.github.io
table-sortable
293
Reposted by Stefan Matei
Lea Verou, PhD @lea.verou.me · 04/09/2026
Came across this fantastic post by Slava Shestopalov randomly while looking for something else medium.com/design-bridg... In the usability & web tech class we used to teach at MIT with @karger.bsky.social I’d give a lecture on graphic design that included this, but this is so much better presented.
medium.com
Optical effects in user interfaces
How to make optically balanced icons, correct shapes alignment, and perfect corner rounding
14612
Stefan Matei @stefanmatei.com · 04/09/2026
I need this so much in all editors (particularly in browser based ones)
020
Reposted by Stefan Matei
Vale @vale.rocks · 02/09/2026
Respected friends and acquaintances, initial-scale is dead! We are freed of its tyranny. You no longer need to include it in your HTML head. It is an obsolete part of your head's meta viewport declaration. The details: vale.rocks/micros/20260... #WebDev #HTML
vale.rocks
You Don't Need Initial-Scale In Your HTML - 2 Sept 2026 13:50 UTC
410620
Reposted by Stefan Matei
Caræsten 🇵🇸 @cara.city · 30/08/2026
I don't think it's fair to post the home address of the Flock CEO online. instead we should have a website that tracks the exact position of his car at all times.
122234450
Reposted by Stefan Matei
Sam Rose @samwho.dev · 28/08/2026
TIL the <samp> element: developer.mozilla.org/en-US/docs/W...
developer.mozilla.org
<samp> HTML sample output element - HTML | MDN
The <samp> HTML element is used to enclose inline text which represents sample (or quoted) output from a computer program. Its contents are typically rendered using the browser's default monospaced fo...
2302
Reposted by Stefan Matei
Kevin Powell @kevinpowell.co · 21/08/2026
One of my favorite new-ish (and decently well supported) CSS features is the linear() function, and because of that, one of my favorite sites is easingwizard.com
0254
Reposted by Stefan Matei
Manuel Matuzović @matuzo.at · 17/08/2026
Here is the 2026 edition of the HTML boilerplate I use for websites I build! Let me know if there's anything else I should consider including! matuzo.at/blog/2026/ht...
matuzo.at
My HTML boilerplate in 2026 - Manuel Matuzovic
Every element I use for the basic structure of a HTML document, with explanations why.
718035
Reposted by Stefan Matei
Frontend Dogma @frontenddogma.com · 22/07/2026
Kernel—Semantic HTML Components for React and Web Components, by @kejk@mastodon.design: www.kernelui.com/?ref=frontenddogma… #websites #libraries #components
kernelui.com
Kernel — Semantic HTML components for React and Web Components
A component library built on real semantic HTML — React and Web Components, one shared token layer.
001
Reposted by Stefan Matei
Firefox for Web Developers @webdevs.firefox.com · 22/07/2026
popover="hint" landed in Firefox 153. Here's how it differs from regular popovers: youtube.com/shorts/HWetx... (sorry for the YouTube link, it seems like video uploads are broken on bsky today)
youtube.com
popover="hint" - new in Firefox 153
YouTube video by Firefox for Web Developers
27621
Reposted by Stefan Matei
David Bisset @davidbisset.com · 20/07/2026
Jelly UI is a dependency-free Web Components library for "soft, tactile product interfaces"... soft-body physics, with dark mode, right-to-left support and WCAG AA color tokens built in. #css #frontend #html #webdev jelly-ui.com
jelly-ui.com
Jelly UI — Soft Web Components
Jelly UI is a dependency-free Web Components library for tactile product interfaces: soft-body physics, real form controls, dark mode, RTL and WCAG AA accessibility.
093
Reposted by Stefan Matei
Designer Hasan @designer4hasand.bsky.social · 18/07/2026
My friends, It's been 3 days without a single donation💔 Every £25 helps us put food on the table & cover the basic daily needs of my family. Your kindness is what keeps us going through the hardest days. If you're able to help or share,it would mean the world to us🧡 Help here: gofund.me/6c54d52fd
084117
Reposted by Stefan Matei
Firefox for Web Developers @webdevs.firefox.com · 15/07/2026
Ohhhh this has just been added to WebKit bugs.webkit.org/show_bug.cgi...
bugs.webkit.org
319178 – [css-text-decor-4] Add support for text-decoration-inset
1594
Reposted by Stefan Matei
Piccalilli @piccalil.li · 15/07/2026
This is fantastic. The writing is superb and the interactive demos really help nail, understanding the concepts. polypane.app/blog/using-s...
polypane.app
Using safe-area-inset to build mobile-safe layouts | Polypane
Modern phones are not simple rectangles. They have rounded corners, camera cutouts, dynamic islands, and home indicators that double as gesture areas. Browsers…
0186
Reposted by Stefan Matei
Nilesh Prajapati @nileshprajapati.com · 14/07/2026
Setting type like a printed page by @carmenansio.bsky.social #css
carmenansio.com
Setting type like a printed page
Fluid scales, balanced headings, drop caps, optical sizing, hanging punctuation. The browser now ships most of a typesetter's toolkit in pure CSS, switched off by default until you ask for it.
051
Reposted by Stefan Matei
Frontend Dogma @frontenddogma.com · 27/06/2026
What Is Google’s Project Nimbus, and Why Are Students Protesting Against It?, by @thehindu.com: www.thehindu.com/sci-tech/technolog… #google #amazon #politics #ethics
thehindu.com
What is Google’s Project Nimbus, and why are students protesting against it?
Students protested against Google’s Project Nimbus, a tech contract between the search giant and the Israeli government that is linked with violence against Palestinian civilians.
021
Reposted by Stefan Matei
BadEmpanada @badempanada.com · 18/06/2026
Unlike most people I actually read your platform. You wanted a State Department dictatorship over Gaza. It was essentially the exact same as what Trump is doing.
4415
Reposted by Stefan Matei
Kevin Powell @kevinpowell.co · 18/06/2026
Inspired by @meyerweb.com's talk at @cssday.nl I played with offset-path before, but somehow missed that we can use it with border-box and padding-box, making this so incredibly easy. I need to fix up the code a bit as it's kinda messy, but you can see it here: codepen.io/editor/kevin...
612813
Reposted by Stefan Matei
Firefox for Web Developers @webdevs.firefox.com · 17/06/2026
CSS field-sizing is newly baseline, meaning you can make various form fields size to their contents, without needing JavaScript.
714827
Reposted by Stefan Matei
Schalk Neethling @schalkneethling.com · 15/06/2026
headingoffset is Not the Document Outline Algorithm | Hi, just me heading off some bad advice I’m starting to see in developer venues. adrianroselli.com/2026/06/head...
adrianroselli.com
headingoffset is Not the Document Outline Algorithm
Hi, just me heading off some bad advice I’m starting to see in developer venues. Background The proposed Document Outline Algorithm, where headings would automatically reset themselves to the appropri...
011
Reposted by Stefan Matei
Firefox for Web Developers @webdevs.firefox.com · 02/06/2026
Ever struggled to get heading tags right in includes/components? headingoffset could be the answer…
1124661
Reposted by Stefan Matei
Josh W. Comeau @joshwcomeau.com · 28/04/2026
The design of this new API is so elegant. It repurposes keyframe animations so that our animation can run over a *scroll range* rather than running over a duration. 🔥 Here’s an interactive widget from the post, showing the core concept:
141
Reposted by Stefan Matei
Firefox for Web Developers @webdevs.firefox.com · 20/05/2026
CSS style() queries landed in Firefox 151 making them newly available across engines. Here's how they work:
215734
Reposted by Stefan Matei
Chris Coyier @chriscoyier.net · 19/05/2026
"Like if shadcn and Open Props had a baby." open-props-ui.netlify.app/html/
open-props-ui.netlify.app
Open Props UI
3336
Reposted by Stefan Matei
Phasers On Fun @humanspareparts.bsky.social · 19/05/2026
we sanctioned the Special Rapporteur because she advocates for Palestinians. now we sanction Sumud Flotilla organizers because they are trying to feed Palestinians. not to be dramatic but i think it’s important you never forget how both parties betrayed humanity www.aljazeera.com/news/2026/5/...
aljazeera.com
US imposes sanctions on Gaza flotilla organisers amid Israeli crackdown
Rights advocate accuses Washington of using 'terrorism label' to shut down Palestine activism internationally.
041
Stefan Matei @stefanmatei.com · 18/05/2026
the way his face changes colors as he powers through his speech
020
Reposted by Stefan Matei
Ahmad Shadeed @ishadeed.com · 17/05/2026
✍️ New Article: Better fluid sizing with round() I wrote about how CSS round() enhances the values you get from clamp() in sizing, typography, and spacing. Why it matters, and how to use it. 🔗 ishadeed.com/article/css-round
712418
Stefan Matei @stefanmatei.com · 16/05/2026
youtube.com
The Palestinian game fighting to exist | #ajshorts
YouTube video by Al Jazeera English
021
Reposted by Stefan Matei
Julia Evans @b0rk.jvns.ca · 15/05/2026
moving away from tailwind, and learning to structure my CSS jvns.ca/blog/2026/05...
1624230
Reposted by Stefan Matei
Random MDN @random-mdn.bsky.social · 13/05/2026
🦖 <code>any-pointer</code> CSS media featu… 🦖 developer.mozilla.org/en-US/docs/We… The any-pointer CSS media feature tests whether the user has any pointing device (such as a mouse), and if so, how accurate it is. #webdev #CSS
developer.mozilla.org
<code>any-pointer</code> CSS media featu…
The any-pointer CSS media feature tests whether the user has any pointing device (such as a mouse), and if so, how accurate it is.
021
Reposted by Stefan Matei
Matt the Dad Dude @undefeatedmatt.wifeguy.online · 12/05/2026
This story was fact checked true ✅ by actual fucking demons from hell
The report was publicly endorsed by a number of high-profile experts and campaigners, including Sheryl Sandberg and Hillary Clinton.
515019
Reposted by Stefan Matei
Caræsten 🇵🇸 @cara.city · 12/05/2026
I do think a lot of the pointed publicity on Microsoft's dealings in Israel came from BDS specifically, so this is legitimately a huge victory for the movement
102417757
Reposted by Stefan Matei
Chris Coyier @chriscoyier.net · 05/05/2026
`zoom` in CSS was so known to be unreliable for so long I don't think I ever really learned what it was supposed to do. But I think that's all fixed now and @stefanjudis.com's demo makes it super clear. Scales stuff while keeping the element in flow. www.stefanjudis.com/today-i-lear...
37413
Reposted by Stefan Matei
MDN Web Docs @developer.mozilla.org · 27/04/2026
Parse and build query strings the easy way 🔗 URLSearchParams gives you a clean API for working with URL parameters. Get, set, append, delete, and iterate, no regex needed. Learn more 👇 developer.mozilla.org/en-US/docs/...
Code snippet demonstrating usage of URLSearchParams for manipulating URL parameters, including getting, setting, and appending values.
0253
Reposted by Stefan Matei
CSS by T. Afif @css-only.dev · 24/04/2026
💡 CSS Tip! You have the code of a CSS shape and you want its cutout version? Learn how to do it with a simple code. css-tip.com/invert-shape/
Showing 2 examples of shape created using CSS and the cutout version of each one.
0317
Reposted by Stefan Matei
Stefan Judis @stefanjudis.com · 24/04/2026
Josh published a new post, and we all know what this means: lots of demos and eye candy. I'd forgotten about the ability to overwrite the SVG `d` attribute in CSS. Still on the fence about whether that's a good idea. 😅 www.joshwcomeau....
Code snippet: .btn:hover .shaft, .btn:focus-visible .shaft { d: path("M 5,12 h 17"); }
0131
Stefan Matei @stefanmatei.com · 23/04/2026
adrianroselli.com
Where to Put Focus When Opening a Modal Dialog
TL;DR: blanket statements about where to put focus when opening a modal dialog are wrong, including this one. This post is meant to help you, an intelligent and thoughtful and empathetic reader, figur...
000
Reposted by Stefan Matei
Stefan Judis @stefanjudis.com · 22/04/2026
Do you know that you can use `image-set` to serve different background images right in CSS? Now you do and `image-set` is "widely available" since last month! 🎉 developer.mozill...
Code snippet: .box { background-image: image-set(url("https://.../small-image.jpg") 1x, url("https://.../bigger-image.jpg") 2x); }
2438