The CSS contain property gives you a way to explain your layout to the browser, so performance optimizations can be made. However, it does come with some side effects in terms of your layout. | Continue reading
By naming lines when setting up our CSS Grid layouts, we can tap into some interesting and useful features of Grid — features that become even more powerful when we introduce subgrids. | Continue reading
In this post, we’ll set up a demo site and tutorial for headless WordPress, including a starter template! We’ll use the WordPress dashboard for rich content editing, while migrating the front-end architecture to the JAMstack. | Continue reading
WordPress adoption is massive. So why would a WordPress site consider moving to JAMstack? In this technical case study, we’ll cover what an actual WordPress migration looks like, using Smashing Magazine itself! We’ll talk through the gains and losses, the things we wish we knew e … | Continue reading
There’s more to spaces than the key you instinctively hit between words with one of your thumbs. Let’s find out what other space characters there are, what their heritage is, and how they can be useful today. | Continue reading
How do you move faster when adding folks to a project supposedly slows it down? Mailchimp’s CPO takes the reader through some considerations for preserving momentum while scaling up. | Continue reading
No frills, or flashing neon frills with sprinklers attached? ‘Brutalist’ websites have flourished in recent years, but their guiding philosophy remains unclear. | Continue reading
Let’s make 2020... fast! A front-end performance checklist (PDF/Apple Pages/MS Word), with everything you need to know to create fast experiences on the web today. | Continue reading
Skipping servers and using the JAMstack to build and deliver websites and apps can save time, money, and headache by allowing us to deliver only static assets on a CDN. But the trade-off of ditching traditional server-based deployments means that standard approaches to dynamic, a … | Continue reading
With a couple of days left until New Year's Eve, it's just about time to set aside 60 minutes to clean up, sort out and back up your digital footprint, to ensure a good smooth start to the new year. | Continue reading
The CSS contain property gives you a way to explain your layout to the browser, so performance optimizations can be made. However, it does come with some side effects in terms of your layout. | Continue reading
Agile has had a long time to infiltrate software development. While the methodology advocates for "co-located, dedicated teams," in its ubiquity Agile is frequently applied to teams partially or fully composed of part-time workers. While there are lessons to be taken from the pra … | Continue reading
In this article, Rachel Andrew looks at some common layout patterns that we can’t yet do on the web and the CSS Specifications that might let us achieve them in the future. | Continue reading
Design systems can improve usability, but they can also limit creativity or fall out of sync with actual products. In this article, we’ll explore how designers and developers can create more robust design systems by building a culture of collaboration. | Continue reading
For the past few months, I’ve been building a software-as-a-service (SaaS) application, and throughout the development process I’ve realized what a powerful tool Slack (or team chat in general) can be to monitor user and application behavior.After a bit of integration, it’s provi … | Continue reading
A significant part of the Internet-using population is aged 50 or older — including the people who invented it. Designers need to understand what older users need and why it’s not enough to just say, "I can read it, so what’s the problem?" | Continue reading
Ever since releasing Grid Inspector, the Firefox DevTools team has been inspired to build a new suite of tools to solve the problems of the modern web. In this article, we’ll learn about all 7 tools and take a peek at potential future projects. | Continue reading
In this article, we will use speech-to-text to draft transcripts of podcasts and interviews for publication. We’ll also evaluate the overall accuracy of these format-transformation technologies by running a few samples through round-trip transcriptions. | Continue reading
Since its release 8 months ago, Gutenberg has been greatly improved, offering a user experience much richer than anything that was possible in WordPress. Let's take a look at its latest developments, and where it is heading to. | Continue reading
In this article, Rachel Andrew explores the situations in which you might encounter overflow in your web designs and explains how CSS has evolved to create better ways to manage and design around unknown amounts of content. | Continue reading
Love your Bash terminal but also love your PC? Maybe you’ve had your eye on some of that new Surface hardware, but can’t make the switch without your terminal. Now you can have Windows and Bash. In this article, we’ll take an in-depth look at how to set up a Windows/Linux develop … | Continue reading
As our phones are getting bigger, we need to adjust how we build and design our websites. Is there something to learn from app design and tap bars? Can we fix the mobile navigation of our websites to have a lower interaction cost? In this article, we’ll find out. | Continue reading
You’ve probably heard of WebAssembly and why it’s a powerful tool in the browser. In this article, we explore why serverless WebAssembly might be equally powerful outside the browser, and how to get started using it. | Continue reading
The Embedded Image Preview (EIP) technique introduced in this article allows us to load preview images during lazy loading using progressive JPEGs, Ajax and HTTP range requests without having to transfer additional data. | Continue reading
When designing mobile first, navigation takes a back seat to content, and ruthless editing paves the way for more focused experiences. The pursuit of simplicity, combined with the tight spatial constraints of mobile viewports, often leads us to strip away elements in an attempt t … | Continue reading
Do you know the impact unused CSS has on performance? Spoiler: It’s a lot! In this article, we’ll explore a SASS-oriented solution for dealing with unused CSS, avoiding the need for complicated Node.js dependencies involving headless browsers, and DOM emulation. | Continue reading
In JavaScript, the Number type cannot safely represent integer values larger than 2⁵³. This limitation has forced developers to use inefficient workarounds and third-party libraries. BigInt is a new data type intended to fix that. | Continue reading
Data can be prohibitively expensive, especially in developing countries. Chris Ashton puts himself in the shoes of someone on a tight data budget and offers practical tips for reducing our websites' data footprint. | Continue reading
Take a moment to remember the last time you collaborated in a code review. Did your team overcome feedback resistance and manage time expectations? Fostering a healthy mindset is the key to build trust and sharing knowledge with your colleagues. | Continue reading
Margins in CSS seem simple enough at first glance. Applied to an element it forms a space around the element, pushing other elements away. However, there is more to a margin than you might think. | Continue reading
In this article, Jorge explains why they’re a great tool and how to create your first monorepo using Yarn with basic npm scripts, and add the required dependencies for each app. | Continue reading
When you are still early on in your programming career, digging into the source code of open source libraries and frameworks can be a daunting endeavor. In this article, Carl Mungazi shares how he got over his fear and began using source code to improve his knowledge and skills. … | Continue reading
When you are still early on in your programming career, digging into the source code of open source libraries and frameworks can be a daunting endeavor. In this article, Carl Mungazi shares how he got over his fear and began using source code to improve his knowledge and skills. … | Continue reading
We are still at the beginning stages of the new technological revolution — the exciting time when technologies like AR will be an expected part of our daily routines — and it’s our opportunity to create a solid foundation for the future generation of designers. | Continue reading
In this article, Miriam takes a deeper dive into the ‘CSS Custom Properties for Cascading Variables’ specification to ask, “Why are they called custom properties, how do they work in the cascade, and what else can we do with them?” | Continue reading
There is a wide variety of choices when it comes to creating a PDF from a web application. In this article, Rachel Andrew takes a look at the tools that are available and shares her recommendations to help you find the tool that works best for you. | Continue reading
In this article, Be Birchall explains why it’s so important to prioritize accessibility among teams and why there needs to be more awareness raised among developers. | Continue reading
Do websites created with reactive frameworks get indexed by Google and other search engines? Is it compulsory to set up pre-rendering, as your SEO consultants suggest? Or are they wrong? | Continue reading
I’ve **never been a fan of color theory**. I think it’s because I’ve always been a bit hopeless at it. I’d love to be able to sit there, color wheel in hand, and pick out complementary, split-complementary and triad color schemes, impressing all of my friends, family and clients … | Continue reading
In this article, Stefan Kaltenegger shares his personal experience and advice on what frontend developers can do on their end to better bridge the gap between designers and developers. | Continue reading
Ever wondered how validation libraries work? This article will tell you how to build your very own validation library for React step by step. The next part will add some more advanced features, and the final part will focus on improving the developer experience. | Continue reading
Ever find yourself writing the same code over and over again? In this article, Jonathan Saring shares his and his team's lessons learned from their own journey towards simple and effective code sharing. | Continue reading
In this final article of the series, we’ll look into notifications UX and permission requests, and how we can design the experience around them better, with the user’s privacy in mind. | Continue reading
Monitoring for changes to the DOM is sometimes needed in complex web apps and frameworks. By means of explanations along with interactive demos, this article will show you how you can use the MutationObserver API to make observing for DOM changes relatively easy. | Continue reading
This series of articles is about privacy-related design patterns. We’ll be exploring some of the respectful ways to approach privacy and data collection, and how to deal with those notorious cookie consent prompts, intrusive push notifications, glorious permission requests, malic … | Continue reading
We talk a lot about Flexbox and CSS Grid Layout, but these layout methods are essentially values of the CSS `display` property, a workhorse of a property that doesn’t get a lot of attention. Rachel Andrew takes a better look in a short series. | Continue reading
In this article, we explore how we can speed up web applications by replacing slow JavaScript calculations with compiled WebAssembly. | Continue reading
Voice Assistants are on their way into people’s homes, wrists, and pockets. In this tutorial, you will learn how to make a What You Get Is What You Hear (WYGIWYH) editor for speech synthesis using Sanity.io’s editor for Portable Text. | Continue reading