Search
Deliver your best work with the help of monday.com
21.2.2019
(This is a sponsored post.)
Here's the situation: You've bashed out a complicated design over two weeks of near full-time effort, gotten everything down to the exact spec of the design file, turn it in for stakeholder review and... you're way off scope. Turns out a few folks on the team put their...
Deliver your best work with the help of monday.com
21.2.2019
(This is a sponsored post.)
Here's the situation: You've bashed out a complicated design over two weeks of near full-time effort, gotten everything down to the exact spec of the design file, turn it in for stakeholder review and... you're way off scope. Turns out a few folks on the team put their...
Don’t Get Clever with Login Forms
19.2.2019
Brad points out some UX problems with a variety of apps that are doing things a little outside of the norm when it comes to their login forms. There is already a bunch of things to get right with forms to begin with (e.g. use the right input types, label your inputs, don't have whack password...
Building a modern app using Nest.js, MongoDB and Vue.js
19.2.2019
Introduction
Nest.js introduces a modern way of building Node.js apps by giving it a proper and modular structure out of the box. It was fully built with TypeScript but still preserves com
Using Slack Slash Commands to Send Data from Slack into Google Sheets
18.2.2019
Since I work from home, most of my daily work interactions happen through Slack. It’s my equivalent to the water cooler. A place to hang out and discuss ideas with friends. I’m part of a book recommendations channel. People share books all the time, but they disappear quickly, lost in a sea...
Simple Crazy Buttons in VanillaJS (Solution to Code Challenge #15)
11.2.2019
Last week on the code challenge #15 we set out to complete a challenge on manipulating DOM properties
JavaScript Glossary: Array .shift() Method
8.2.2019
Basics
This method takes out the first element from an array and returns it. The shift method mutates the array during this process, reducing its length
JavaScript Glossary: Array .pop() Method
8.2.2019
Basics
This method takes out the last element from an array and returns it. The pop method mutates the array during this process reducing its length
Animate a Blob of Text with SVG and Text Clipping
6.2.2019
I came across this neat little animation in a designer newsletter — unfortunately, I lost track of the source, so please give a shout out if you recognize it! In it, a block of text appears to bleed into view with a swirl of colors, then goes out the same way it came in. It’s a slick effect and...
VS Code January Update! No more reloading to install extensions!
6.2.2019
The VS Code January update is out (version 1.31) and as usual, the VS Code team has put in som
Well, Typetura seems fun
1.2.2019
I came across this update from Scott Kellum's and Sal Hernandez's project Typetura via my Medium feed this morning, and what a delight?!
(Also, wow, I really have been out of the game for a minute.)
Typetura.js is a fluid design solution, for any property, based on any input. It’s not for just...
Using Artificial Intelligence to Generate Alt Text on Images
1.2.2019
Web developers and content editors alike often forget or ignore one of the most important parts of making a website accessible and SEO performant: image alt text. You know, that seemingly small image attribute that describes an image:
<img src="/cute/sloth/image.jpg" alt="A brown baby sloth...
The Many Ways to Change an SVG Fill on Hover (and When to Use Them)
31.1.2019
SVG is a great format for icons. Vector formats look crisp and razor sharp, no matter the size or device — and we get tons of design control when using them inline.
SVG also gives us another powerful feature: the ability to manipulate their properties with CSS. As a result, we can make quick...
How to Change Animated GIF Speed
29.1.2019
Comedians would tell you that timing is the most important part of any joke. The same could be said about animated GIFs; whether they’re used as a meme or to illustrate a process, the speed of an animated GIF can effect its effectiveness. With that idea in mind, I set about trying to figure...
Table design patterns on the web
28.1.2019
Chen Hui Jing has tackled a ton of design patterns for tables that might come in handy when creating tables that are easy to read and responsive for the web:
There are a myriad of table design patterns out there, and which approach you pick depends heavily on the type of data you have and...
Netlify Makes Deployments a Cinch
22.1.2019
(This is a sponsored post.)
Let's say you were going to design the easiest way to deploy a static site you can possibly imagine. If I was tasked with that, I'd say, well, it would deploy whenever I push to my master branch, and I'd tell it what command to run to build my site. Or maybe it has...
Who is @horse_js?
22.1.2019
Many of us follow @horse_js on Twitter. Twenty-one thousand of us, to be exact. That horse loves stirring up mischief by taking people's statements out of context. It happened to me a few times and almost got me in trouble.
I wonder how many people hate CSS because their experience with...
JavaScript Labels
15.1.2019
No matter how long you’ve been a JavaScript developer, there will always be language features that you didn’t know about until you saw them in a fringe piece of code. Your reaction generally is a bit like: One of those features I see developers quizically trying to figure out...
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...
The Ethics of Web Performance
14.1.2019
Tim Kadlec on the issues surrounding poor web performance and why it’s so important for us to care about making our sites as fast as possible:
Poor performance can, and does, lead to exclusion. This point is extremely well documented by now, but warrants repeating. Sites that use an excess...