An online magazine for designers and web developers. Questions? We've got your back: @SmashingSupport, @SmashingConf. Curated by Iris, Vitaly and the team.
⚛️ React Server Components don’t send HTML or JSON. They rely on the custom Flight protocol to stream interactive UIs. But that same mechanism introduces powerful deserialization sinks attackers can exploit.
↬ Durgesh Pawar breaks down the CVSS 10.0 “React2Shell” vulnerability, explains how protocol manipulation can lead to remote code execution, and shares practical defenses for hardening React applications: https://t.co/rmi1D6D8lZ
Our Person of the Week advocates for a web that is faster, lighter, and more respectful of the people using it. Please give a warm round of applause for... Ines Akrap!
Thank you for everything you do for the community, dear @InesAkrap! 🧡
#smashingcommunity
🤔 The common rule of thumb is to never “block” the browser’s main thread when running JavaScript tasks. But is this a hard rule? https://t.co/Na6NXLHbZD
🔍 Many companies assume everyone craves new AI features. But the reality is that most people don’t want more AI — at least not in the way most AI leaders envision it: https://t.co/jA5uX7sUDd
Our Person of the Week specializes in translating behavioral science into practical design strategies. Drumroll, please, for... Sarah Thompson!
Thank you for everything you do for the community, dear Sarah! #smashingcommunity 🧡
🌱 The strongest visual concepts don’t start in Figma. They start with the right questions. Take a closer look at the pre-concept phase of brand identity design, where teams research brand context, uncover hidden assumptions with stakeholders, and turn shared direction into a visual foundation before a single concept is created: https://t.co/XGQt0eTjIW
✨ For years, we have been building websites inside boxes on WordPress. Let’s take a closer look at Kirki, a freeform visual builder with an infinite canvas, and explore how it redefines the experience with improved performance, full design freedom, and zero plugin dependency: https://t.co/fG9vME5I1R
(Article supported by @KirkiBuilder 💖)
Our Person of the Week is on a mission to help designers design products with depth in the age of generative AI. Please give a warm round of applause for... Jamie Mill!
Thank you for everything you do for the community, dear @jamiemill! 🧡
#smashingcommunity
Please meet our Person of the Week: Martin Underhill! Martin is an accessibility consultant passionate about helping companies produce digital products that everyone can use.
Thank you for everything you do for the community, dear @tempertemper! 🧡
#smashingcommunity
Are you up for a little creativity challenge? Then our monthly wallpapers series could be for you: Design a desktop wallpaper for July, and get featured in our wallpapers post next week.
🎨🖌️ Join in: https://t.co/3J0vRa0uo5
We can’t wait to see what you’ll come up with!
Drumroll, please, for our Person of the Week: Marie-Claire Dean! MC has been an AI practitioner for over a decade and helps design and product leaders navigate the challenges of the AI era.
Thank you for everything you do for the community, dear MC! 🧡
#smashingcommunity
Drumroll, please, for our Person of the Week... Are Halland! Are is the creator of the Core Model, a practical framework to help you create better digital products and services.
Thank you for everything you do for the community, dear @coremodelbook! 🧡
#smashingcommunity
Our Person of the Week loves helping people turn boring facts into compelling stories. Drumroll, please, for... Ben Sauer!
Thank you for everything you do for the community, dear @bensauer! 🧡
#smashingcommunity
Our Person of the Week is passionate about turning chaos into cohesion with scalable, intuitive systems. Please give a warm round of applause for... Donnie D’Amato!
Thank you for everything you do for the community, dear @donniedamato! 🧡
#smashingcommunity
🚀 Seventy percent of websites still fail basic WCAG contrast checks in 2025. After years of design system tooling, accessibility linters, and JavaScript libraries, nothing moved the needle. We didn’t need better libraries. We’ve needed better CSS. The contrast-color() function is that better CSS: https://t.co/TqunhILu9X
✨ There’s a moment in almost every usability session where a participant pauses at the login screen, types something, and glances up: checking whether they’re “doing it right.” That pause is a clear sign. They’ve already clocked that this isn’t a real app, and every data point collected after that moment is filtered through that awareness. Here’s a tutorial on how to fix it: https://t.co/7szfB207ry
(Article supported by @protopieapp 💖)
Have you spotted our Person of the Week already? Please give a warm round of applause to... Juan Diego Rodríguez!
Thank you for everything you do for the community, dear @monknow_dev! 🧡
#smashingcommunity
🎭 What people say, feel, think, and do are often very different things. To understand user behavior, it helps to look beyond the surface and explore hidden motivations, root causes, and the different layers of reality that shape how people act: https://t.co/PboCsPoQpP
🌊 Meet sibling-index() and sibling-count(). Staggered cascade effect in one line of CSS without :nth-child() rules or JS workarounds. Works for 5 items or 5,000: https://t.co/F8gty57LnA