Articles by Smashing Magazine

  • A Guide To Attracting Clients To Your Agency

    Without a doubt, word-of-mouth recommendation is an incredibly desirable way to win work. It requires zero marketing efforts and typically converts at a higher rate as your agency has been recommended. You should always be seeking to nurture word-of-mouth recommendations, and projects which come this way should make up a significant percentage of your income. […]

    READ MORE
  • Adding Time To Your Schedule As A Professional

    Many of us — myself included — may not realize how their time is spent each day. Some of the apps now available on iPhone or Android may help with some of the realization by telling us how much time we spend gaming, emailing or watching YouTube on our phone. This, however, may only capture […]

    READ MORE
  • Color Tools And Resources

    Today, we’re shining the spotlight on color tools and resources for all kinds of projects, from all types of color palettes and generators to getting contrast and gradients just right for your projects. This collection is by no means complete, but rather a selection of things that the team at Smashing found useful and hope […]

    READ MORE
  • How To Migrate From WordPress To A Headless CMS

    WordPress is the most used website builder in the world; almost half of the web has used WordPress to create their website. It makes sense, because it allows you to quickly create websites and has a rich plugin’s ecosystem to help you scale your site. But technology is evolving, and there are more and more […]

    READ MORE
  • Maintaining End-To-End Quality With Visual Testing

    Testing is a critical part of any developer’s workflow. It helps us to ensure that our project is going to maintain a high level of quality, as well as prevent any pesky bugs from getting out into the wild. But often automated tests can be a pain to manage. Between an endless amount of code […]

    READ MORE
  • ISR vs DPR: Big Words, Quick Explanation

    If you’ve been dabbling in the Jamstack/page rendering/Next.js world, chances are you’ve heard of the terms “Incremental Static Regeneration” (ISR) and “distributed persistent rendering” (DPR) floating around. And if you haven’t, you might be like, “Wow, these are long words that I’ll never understand.” That’s where you’re wrong! You’re about to understand them now. What […]

    READ MORE
  • You Can Do That With A JavaScript Data Grid?

    Data grids, also known as data tables, are essential in presenting massive amounts of data to users. Users should be able to view the data in a way that’s easy to understand, analyze, and manipulate. However, building data grid views with performance, speed, and user experience in mind can be a particularly daunting task. This […]

    READ MORE
  • Frustrating Design Patterns: Broken Filters

    Filters are everywhere. While we often think of them appearing when booking flights or shopping online, filters are frequently used in pretty much every interface that features more than a handful of data points. It’s not necessarily just the sheer amount of data that is difficult to make sense of though; it’s the complexity and […]

    READ MORE
  • Three Insights I Gained While Researching Vue.js Accessibility

    JavaScript frameworks like React, Angular and Vue have a very bad reputation when it comes to web accessibility. But is this due to inherent technical limitations or insurmountable problems of those tools? I think not. During the research phase of my book, “Accessible Vue,” I gained three insights regarding web app accessibility in general and […]

    READ MORE
  • Building A Dynamic Header With Intersection Observer

    The Intersection Observer API is a JavaScript API that enables us to observe an element and detect when it passes a specified point in a scrolling container — often (but not always) the viewport — triggering a callback function. Intersection Observer can be considered more performant than listening for scroll events on the main thread, […]

    READ MORE
  • How To Migrate From jQuery To Next.js

    When jQuery appeared in 2006, a lot of developers and organizations started to adopt it for their projects. The possibility of extending and manipulating the DOM that the library offers is great, and we also have many plugins to add behavior to our pages in case we need to do tasks that aren’t supported by […]

    READ MORE
  • Refactoring CSS: Introduction (Part 1)

    CSS is a simple stylesheet language for defining a website or document’s presentation. However, this simplicity leaves the door open for many potential issues and technical debt — bloated code, specificity hell, duplicated code blocks with very little to no difference, leftover unused selectors, unnecessary hacks, and workarounds, to name a few. That kind of […]

    READ MORE
  • Making A Strong Case For Accessibility

    Imagine yourself as someone with a visual disability. Cataracts, or totally blind even. A site is not accessible because of many factors, willing and unwillingly. Accessibility may have been attended to at the end of the project or not in the budget, or maybe they just didn’t practice it. You can’t access the vital information […]

    READ MORE
  • Tools And Practices To Speed Up The Vue.js Development Process

    Throughout this tutorial, we will be looking at practices that should be adopted, things that should be avoided, and have a closer look at some helpful tools to make writing Vue.js easier. I’ll be focusing mostly on Vue 2 as most folks and organizations still use the older version. No reason to worry though, as […]

    READ MORE
  • How To Choose A Headless CMS

    Web pages, such as the one you’re reading now, have text, images, videos and other assets to bring information to you. This data would be collated and authored in a Web Content Management System (WCMS) by a content editor. WCMSes have gone through an evolution moving from a Traditional CMS to a Decoupled CMS to […]

    READ MORE
  • An Introduction To Figma Interactive Components

    Recently, Figma rolled out the beta for the newest interactive components feature that allows defining interactions and animations directly into the variants and propagates them to every component instance. This means that it is now possible to create a component with states (hover, active, clicked, focus) and make it interactive so that every copy of […]

    READ MORE
  • Using HSL Colors In CSS

    From my experience, most of the colors I see people using in CSS are hex and RGB. Recently, I’ve started seeing more usage of HSL colors, however, I still think that the full potential of HSL is overlooked. With the help of this article, I’d like to show you how HSL can truly help us […]

    READ MORE
  • Email Testing Flow As It Should Be

    We spend a lot of time and effort crafting emails with a specific purpose: to make their recipients read them and take the desired actions. The three known bottlenecks of every email sequence include: Deliverability Emails are going to spam folders and are never read. Display issues Email content is broken or not properly rendered […]

    READ MORE
  • It’s A (Front-End Testing) Trap! Six Common Testing Pitfalls And How To Solve Them

    As I was rewatching a movie I loved as a child, one quote in particular stood out. It’s from the 1983 Star Wars film “Return of the Jedi”. The line is said during the Battle of Endor, where the Alliance mobilizes its forces in a concentrated effort to destroy the Death Star. There, Admiral Ackbar, […]

    READ MORE
  • The State Of Web Workers In 2021

    I’m weary of always comparing the web to so-called “native” platforms like Android and iOS. The web is streaming, meaning it has none of the resources locally available when you open an app for the first time. This is such a fundamental difference, that many architectural choices from native platforms don’t easily apply to the […]

    READ MORE