
Cumulative Layout Shift is one of the hardest core web vital to debug. In this article, we go through different tools to investigate CLS, when to use them(and when not), and solutions to some of the CLS issues we faced in our Next.js-based e-commerce website.
AM
Arijit Mondal·October 18, 2021Frontend 
Writing CSS has probably never been more fun and exciting than it is today. In this post we’ll take a look at common problems and use cases we all have to face in our work and how to solve them with modern CSS. If you’re interested, we’ve also just recently covered [CSS auditing tools](https://www.smashingmagazine.com/2021/03/css-auditing-tools/), [CSS generators](https://www.smashingmagazine.com/
CM
Cosima Mielke·October 14, 2021Frontend 
Web-browser for research that helps programmers think clearly.

Ahmad Shadeed blogs the sentiment that we might not need to lean on position: absolute as much as we might have in the past. For one thing: stacking elements.

Remix has this beautifully simple feature for CSS that I want to tell you all about.
KC
Kent C. Dodds·October 13, 2021Frontend 
Do you like a good interface design challenge? What about accessibility testing and design systems? Or maybe Next.js and advanced CSS? With our [new online workshops](https://smashingconf.com/online-workshops/) on front-end & design, we cover all of it. Below you’ll find a schedule of what’s coming up next. Ah, and [here
IL
Iris Ljesnjanin·October 13, 2021Frontend 
Google Analytics is powerful analytics software. A common way to use it is to just slap the JavaScript snippet on every page template you have and let it

React with JSX is a fantastic tool for making easy-to-use components. Typescript components make it an absolute pleasure for developers to integrate your components into their apps and explore your APIs. Learn about three lesser-known React APIs that can take your components to the next level, and help you build even better React Components in this article.
GK
Gaurav Khanna·October 12, 2021Frontend 
A “dark pattern” is a deceptive UX pattern that tricks users into doing things they may not really want to do. Autofill is a widespread feature either by choice or by accident: who hasn’t accepted to let the browser save/use web form information, either on purpose or by mistake? In this article, Alvaro Montoro does a little experiment to find out how much privacy is taken away from users across th
AM
Alvaro Montoro·October 11, 2021Frontend 
Most animation libraries like GSAP and Framer Motion are built purely with JavaScript or TypeScript, unlike AnimXYZ, which is labelled “the first composable CSS animation toolkit”, built mainly with SCSS. While a simple library, it can be used to achieve a lot of awesome animation on the web in a short amount of time and little code. In this article, Ejiro Asiuwhu will show you how to use the Anim

Today we will be learning how to build a tennis trivia app using Next.js and Netlify. This technology stack has become my go-to on many projects. It allows

KendoReact can save you boatloads of time because it offers pre-built componentry you can use in your app right away. They look nice, but more importantly,

Debugging in CSS means figuring out what might be the problem when you have unexpected layout results. Today, Stephanie Eckles will look at a few categories bugs often fit into, see how you can evaluate the situation, and explore techniques that help prevent these bugs.
SE
Stephanie Eckles·October 6, 2021Frontend 
Dumb trick alert!

Animating elements with CSS can either be quite easy or quite difficult depending on what you are trying to do. Changing the background color of a button when

One of the use cases for using CSS Grid is to display a gallery of images, but a gallery on its own may not be that exciting. In this article, Silvestar Bistrović will be looking at how to set up a gallery that is expandable as well as accessible with a few tips and tricks along the way. Let’s get started!
SB
Silvestar Bistrovic·October 4, 2021Frontend 
Of the languages that browsers speak, I'd wager that the very first one that developers decided needed some additional processing was HTML. Every single CMS
CCChris Coyier·September 30, 2021Frontend 
We’re sharing details about Mariana Trench (MT), a tool we use to spot and prevent security and privacy bugs in Android and Java applications. As part of our effort to help scale security through building automation, we recently open-sourced MT to support security engineers at Facebook and across the industry. This post is the third […]
CWChris Wiltz·September 29, 2021Frontend 
Frontend Masters has been our learning partner for a couple of years now. I love it. If you need structured learning to up your web development skills,
CCChris Coyier·September 24, 2021Frontend 
Developing with Next.js is amazing, but there are definitely some challenges. The developer experience with Next.js is something you just need to experience. We made the switch from a more traditional integrated e-commerce platform to a headless platform with Next.js. Here are the most important lessons learned while rebuilding a large e-commerce site with Next.js.

The new CSS `accent-color` property makes it quick and easy to roll out our brand colors to certain form inputs by leveraging user agent styles. It has the potential to provide quick and easy styling for many of our form elements, especially where extensive customization isn’t needed, as well as allowing the browser to pick the best options for accessibility. In this article Michelle Barker will t
MB
Michelle Barker·September 23, 2021Frontend 
When I came up in web development (2005-2010 were formative years for me), one of the first lessons I learned was to have a clean foundation of HTML. "What
CCChris Coyier·September 22, 2021Frontend 
CSS is on a tear lately. Again, I've heard of a brand new thing I've never seen before, and again it's via Miriam: CSS Conditionals.
CCChris Coyier·September 21, 2021Frontend 
CSS ::before and ::after pseudo-elements allow you to insert "content" before and after any non-replaced element (e.g. they work on a <div> but not
HH
Habdul Hazeez·September 21, 2021Frontend 
Nowadays, creating complex shapes is an easy task using clip-path, but adding a border to the shapes is always a pain. There is no robust CSS solution and we
TA
Temani Afif·September 20, 2021Frontend 
This is a good tweet from Harry:
CCChris Coyier·September 20, 2021Frontend 
It's not every day you see a new processor for building websites that reinvents the syntax for HTML and CSS and JavaScript. That's what imba is doing.
CCChris Coyier·September 20, 2021Frontend 
Project Turpentine is the easiest way to replicate a varnish configuration on Cloudflare. Just export your full VCL from another provider and use Turpentine to move to a TypeScript-based runtime for varnish on Cloudflare Workers.

My favorite kind of blog post is when someone takes a subject that I’ve spent all of five minutes considering and then says—no!—this is an enormous topic
RR
Robin Rendle·September 17, 2021Frontend 
Today, Cloudflare is announcing support for Early Hints. Early Hints takes advantage of “server think time” to asynchronously send instructions to the browser to begin loading resources while the origin server is compiling the full response, which can improve page load time by 30%.

Read an updated article with an approach that uses modern CSS features.
PB
Patrick Brosset·September 16, 2021Frontend 
Managing app size at Facebook is a unique challenge: Every day, developers check in large volumes of code, and each line of code translates into additional bits in the apps that people ultimately download onto their phones. Left unchecked, this added code would make the app bigger and bigger until eventually the time it takes […]
MEMeta Engineering·September 13, 2021Frontend 
There are way too many options in Web Animations API to pick them up that easily. There’s no middle ground between simple transitions and complex animations. You’re either fine with what CSS Transitions and Animations provide or you suddenly need all the power you can get. Learning how timing works and how to control the playback of several animations at once makes for a solid foundation on which
KM
Kirill Myshkin·September 13, 2021Frontend 
I believe acss.io is the first usage of "Atomic CSS" where the point of it is to be a compiler. You write CSS like this:
CCChris Coyier·September 10, 2021Frontend 
Introducing the Cloudflare Workers Rust SDK: write your entire Worker in Rust, no JavaScript required.

I love shapes, especially colorful ones! Shapes on websites are in the same category of helpfulness as background colors, images, banners, section separators,
TA
Tapas Adhikary·September 8, 2021Frontend 
Being able to look past the apparent simplicity, break down a component into its constituent parts, ask key questions, and even consider future uses, are all skills that will serve any developer well when building websites In this article, we’ll walk through the process of taking a seemingly simple design for a text-and-media component and deciding how best to translate it into code, keeping in mi
MB
Michelle Barker·September 8, 2021Frontend 
What’s the state of HTML Email, Vue.js and Next.js? What are new, smart interface design patterns we could use? Let’s figure it out. With our brand new online workshops on front-end & design. Now with **free workshops** for you to test the waters.
IL
Iris Ljesnjanin·September 8, 2021Frontend 
When requirements read "when visible" your brain should go straight to IntersectionObserver. That's exactly what Zach is doing here to kick off an animation
CCChris Coyier·September 7, 2021Frontend 
On July 21st, 2021, Slack officially became a part of Salesforce at the price tag of $27.7 billion. This was undoubtedly Slack’s most significant event in the past year. As a frontend intern on Slack’s Customer Acquisition team this summer, I had the once-in-a-lifetime opportunity to be directly involved with announcing the closing of one…
MMMina Markham·September 7, 2021Frontend 
Learn what’s new with developer tools in Firefox, Edge, Chrome and Safari. Discover new and powerful features that will help you be more comfortable and productive when testing and debugging across browsers. With this article, Patrick Brosset tries to make you want to try them out, and maybe will help you get more comfortable next time you need to debug a browser-specific issue.
P
Patrickbrosset·September 7, 2021Frontend 
There is a working draft spec for CSS scoping now. Other than a weird period where <style scoped> shipped and then was subsequently removed from the
CCChris Coyier·September 6, 2021Frontend 
What exactly is a displacement filter? In this article, Dirk Weber will be diving into one of the most spectacular filter effects: the SVG feDisplacementMap filter primitive. In order to make it all easier to digest, Dirk has divided the article into three parts in which you’ll be exploring how the feDisplacementMap works, methods to create fancy displacement maps in SVG, and methods to animate th

CSS keyframe animations are incredibly flexible and powerful, but they’re also a bit weird. In this deep-dive tutorial, we'll learn how CSS keyframes work from the ground up, and see how to use them to build high-quality animations.
JWJosh W. Comeau·August 31, 2021Frontend 
By combining some React APIs, we can accurately manage “simple” states. With Next.js though, we can quickly find situations where we need to accommodate many other requirements. This article is intended to be used as a primer for managing complex states in a Next.js app. These strategies should fit the vast majority of apps around with little to no adjustments. Let’s have a look at some patterns t

After the fragmentation effect, I am going to tackle another interesting animation: the blob! We all agree that such effect is hard to achieve with CSS, so we

A compound component is one of the advanced patterns of React which makes use of an interesting way to communicate the relationship between UI components and share implicit state by leveraging an explicit parent-child relationship. In this article, Ichoku Chinoso will show you one of the advanced patterns of React which is the compound component pattern. It’s an awesome method to build reusable co
IC
Ichoku Chinonso·August 27, 2021Frontend 
While learning Vue.js, I started building free web tools that involved the exploration of SVG, with the goal of learning something about both! Let’s take a

Free event hosted by Netlify coming up next week (Wednesday, August 25th): Architecting with Next.js. It's just a little half-day thing. No brainer.

You can't just do @media (prefers-reduced-data: no-preference) alone because, as Kilian Valkhof says:

We can update the URL in JavaScript. We've got the APIs pushState and replaceState:

Starting today, your team can use Cloudflare’s Browser Isolation service to protect sensitive data inside the web browser. Administrators can define Zero Trust policies to control who can copy, paste, and print data in any web based application.

In this article, we will code a Gantt chart as a reusable Web component. We will focus on the architecture of the component, rendering the calendar with CSS Grid and managing the state of the draggable tasks with JavaScript Proxy Objects.

Your project is on a tight budget? We’ve collected some wonderful, free icons and goodies that we’ve discovered lately and that are bound to give your design the finishing touch. We’ve also just recently covered [Figma plugins](https://www.smashingmagazine.com/2021/08/figma-tools-plugins-resources/), [SVG generators](https://www.smashingmagazine.com/2021/03/svg-generators/), [accessible front-end

HTML is not a programming language.
AM
Alvaro Montoro·August 16, 2021Frontend 
Brian Kardell shares a bit about the progress of bringing "Tabs" to HTML. We kinda think we know what they are, but you have to be really specific when dealing with specs and defining them. It's tricky.

Heck of a CSS trick here from Dongsung Kim.

Facebook engineers have built and open-sourced an Open Compute Time Appliance, an important component of the modern timing infrastructure. To make this possible, we came up with the Time Card — a PCI Express (PCIe) card that can turn almost any commodity server into a time appliance. With the help of the OCP community, we […]
MEMeta Engineering·August 11, 2021Frontend 
How do we build and establish a successful, bulletproof design system? What’s the state of HTML Email? And what are new, smart interface design patterns we could use? Let’s find out. With our [brand new online workshops](https://smashingconf.com/online-workshops/) on front-end & design — to help us all boost skills online.
IL
Iris Ljesnjanin·August 11, 2021Frontend 
Have you ever wished you could see the HTML source of a web page while on a mobile browser, which generally doesn't offer that feature? If you have a desktop