Search
Need to Test API Endpoints? Two Quick Ways to Do It.
25.1.2019
Here's a possibility! Perhaps you are testing your JavaScript with a framework like Jasmine. That's nice because you can write lots of tests to cover your application, get a nice little UI to see the output, and even integrate it with build and deploy tools to make your ongoing development work...
Creating Your Own Gravity and Space Simulator
25.1.2019
Space is vast. Space is awesome. Space is difficult to understand — or so people tend to think. But in this tutorial I am going to show you that this is not the case. Quite the contrary; the laws that govern the motion of the stars, planets, asteroids and even entire galaxies are incredibly simple....
Putting the Flexbox Albatross to Real Use
24.1.2019
If you hadn't seen it, Heydon posted a rather clever flexbox layout pattern that, in a sense, mimics what you could do with a container query by forcing an element to stack at a certain container width. I was particularly interested, as I was fighting a little layout situation at the time I...
Using React and XState to Build a Sign In Form
24.1.2019
To make a sign in form with good UX requires UI state management, meaning we’d like to minimize the cognitive load to complete it and reduce the number of required user actions while making an intuitive experience. Think about it: even a relatively simple email and password sign in form needs...
React 16.6.0 Goodies
23.1.2019
React 16.6.0 was released October 2018 and with it came goodies that spice up the way we can develop with React. We’re going to cover what I consider the best of those new goodies with examples of how we can put them to use in our work.
React.memo() avoids unnecessary re-rendering
There...
Would You Watch a Documentary Walking Through Codebases?
22.1.2019
This resonated pretty strongly with people:
I’d watch a documentary series of developers giving a tour of their codebases.
— Chris Coyier (@chriscoyier) January 6, 2019
I think I was watching some random Netflix documentary and daydreaming that the subject was actually something I was super...
The Secret Weapon to Learning CSS
22.1.2019
For some reason, I’ve lately been thinking a lot about what it takes to break into the web design industry and learn CSS. I reckon it has something to do with Keith Grant’s post earlier this month on a CSS mental model where he talks about a “common core for CSS”:
We need common core tricks like...
The Great Divide
21.1.2019
Let’s say there is a divide happening in front-end development. I feel it, but it's not just in my bones. Based on an awful lot of written developer sentiment, interviews Dave Rupert and I have done on ShopTalk, and in-person discussion, it’s, as they say... a thing.
The divide is between people...
STAR Apps: A New Generation of Front-End Tooling for Development Workflows
18.1.2019
Product teams from AirBnb and New York Times to Shopify and Artsy (among many others) are converging on a new set of best practices and technologies for building the web apps that their businesses depend on. This trend reflects core principles and solve underlying problems that we may share, so...
Intro to React Hooks
18.1.2019
Hooks make it possible to organize logic in components, making them tiny and reusable without writing a class. In a sense, they’re React’s way of leaning into functions because, before them, we’d have to write them in a component and, while components have proven to be powerful and functional...
2019 CSS Wishlist
17.1.2019
What do you wish CSS could do natively that it can't do now? First, let's review the last time we did this in 2013.
❌ "I'd like to be able to select an element based on if it contains another particular selector"
❌ "I'd like to be able to select an element based on the content...
How I Built a GPS-Powered Weather Clock With My Old iPhone 4
17.1.2019
My first smartphone was an iPhone 4s. I remember the excitement of exploring its capabilities at a time when it was the coolest thing around. Eventually, of course, I replaced it with a newer model and the old iPhone, still in mint condition, gathered dust for two years. What a waste!
But was...
How I’ve Been Using Notion Personally and Professionally
16.1.2019
I use Notion quite a bit, both personally and professionally.
In a sense, it's just an app for keeping documents in one place: little notes, to-do lists, basic spreadsheets, etc. I like the native macOS Notes app just fine. It's quick and easy, it's desktop and mobile, it syncs... but there...
Making Movies With amCharts
16.1.2019
In this article, I want to show off the flexibility and real power of amCharts 4. We’re going to learn how to combine multiple charts that run together with animations that form a movie experience. Even if you’re only interested in creating a different kind of animation that has nothing to do with...
How Well Do You Know CSS Layout?
15.1.2019
The difference between a CSS good experience and a long frustrating one is oftentimes a matter of a few small details. CSS is indeed nuanced. One of the most common areas where I see struggles is layout. Personally, I like to study patterns. I notice that I tend to use a small group of patterns...
Using React Portals to Render Children Outside the DOM Hierarchy
15.1.2019
Say we need to render a child element into a React application. Easy right? That child is mounted to the nearest DOM element and rendered inside of it as a result.
render() {
return (
<div>
// Child to render inside of the div
</div>
);
}
But! What if we want...
Design v17
14.1.2019
We rolled out a new site design on January 1! This is the 17th version of CSS-Tricks if you can believe that. The versions tend to evolve a decent amount beyond the initial launch, but we archive screenshots on this design history page. Like I said in our 2018 thank you post:
This is easily...
Slice and Dice a Disc with CSS
13.1.2019
I recently came across an interesting sliced disc design. The disc had a diagonal gradient and was split into horizontal slices, offset a bit from left to right. Naturally, I started to think what would the most efficient way of doing it with CSS be.
Sliced gradient disc.
The first thought...
Re: Pleasing Color Palettes
11.1.2019
There are so many tools out there to help you pick colors. I totally get it! It's hard! When colors are done well, it's like magic. It adds a level of polish to a design that can really set it apart.
Let's look at some, then talk about this idea some more.
Here's one I just saw called Color...
Piecing Together Approaches for a CSS Masonry Layout
11.1.2019
Masonry layout, on the web, is when items of an uneven size are laid out such that there aren't uneven gaps. I would guess the term was coined (or at least popularized) for the web by David DeSandro because of his popular Masonry JavaScript library, which has been around since 2010.
JavaScript...