Search
a11y is web accessibility
29.8.2020
Eric Bailey eviscerates the notion that the term “a11y” isn’t accessible. It’s a hot take that I’ve had myself, embarrassingly enough.
I never see people asking why WWI is written out the way it is, either. Won’t people confuse that with the first Wonder Woman movie?...
Here’s How I Solved a Weird Bug Using Tried and True Debugging Strategies
28.8.2020
Remember the last time you dealt with a UI-related bug that left you scratching your head for hours? Maybe the issue was happening at random, or occurring under specific circumstances (device, OS, browser, user action), or was just hidden in one of the many front-end technologies that are part...
Copy the Browser’s Native Focus Styles
28.8.2020
Remy documented this the other day. Firefox supports a Highlight keyword and both Chrome and Safari support a -webkit-focus-ring-color keyword. So if you, for example, have removed focus from something and want to put it back in the same style as the browser default, or want to apply a focus style...
Deeper DX
27.8.2020
Shawn Wang thinks there are deeper, perhaps more uncomfortable, places to go with developer experience (DX) beyond the surface-level stuff that we recently covered. Sure, sure, documentation, CLIs, good demos. But there are much harder questions to answer that are part of the real DX. Shawn lists...
Going Jamstack with React, Serverless, and Airtable
27.8.2020
The best way to learn is to build. Let’s learn about this hot new buzzword, Jamstack, by building a site with React, Netlify (Serverless) Functions, and Airtable. One of the ingredients of Jamstack is static hosting, but that doesn’t mean everything on the site has to be static. In fact, we’re...
A Complete Walkthrough of GraphQL APIs with React and FaunaDB
27.8.2020
As a web developer, there is an interesting bit of back and forth that always comes along with setting up a new application. Even using a full stack web framework like Ruby on Rails can be non-trivial to set up and deploy, especially if it’s your first time doing so in a while.
Personally I have...
A Bit on CI/CD
27.8.2020
I’d say “website” fits better than “mobile app” but I like this framing from Max Lynch:
Every production mobile app ultimately has a set of recurring tasks around integration, testing, deployment, and long term maintenance. These tasks often must be automated across...
Why you should hire a front-end developer
26.8.2020
Matt Hobbs says you should hire a front-end developer because…
“A front-end developer is the best person to champion accessibility best practices in product teams.”
“80-90% of the end-user response time is spent on the front end.”
“A front-end developer takes pressure...
Morphing SVG With react-spring
26.8.2020
I’ve been intrigued by the morphing effect ever since I was a little kid. There’s something about a shape-shifting animation that always captures my attention. The first time I saw morphing left me wondering “ Wow, how did they do that?” Since then, I’ve created demos and written an article about...
What’s New In DevTools (Chrome 86)
26.8.2020
It wasn’t that long ago that Umar Hansa published a look at the most interesting new features in Chrome DevTools released in 2020. In fact, it was just earlier this month!
But in that short amount of time, Chrome has a few new tricks up its sleeve. One of the features Umar covered was...
Doom Damage Flash on Scroll
26.8.2020
The video game Doom famously would flash the screen red when you were hit. Chris Johnson not only took that idea, but incorporated a bunch of the UI from Doom into this tounge-in-cheek JavaScript library called Doom Scroller. Get it? Like, doom scrolling, but like, Doom scrolling. It’s funny...
Comparing Data in Google and Netlify Analytics
25.8.2020
Jim Nielsen:
the datasets weren’t even close for me.
Google Analytics works by putting a client-side bit of JavaScript on your site. Netlify Analytics works by parsing server logs server-side. They are not exactly apples to apples, feature-wise. Google Analytics is, I think it’s fair...
Designing a JavaScript Plugin System
25.8.2020
WordPress has plugins. jQuery has plugins. Gatsby, Eleventy, and Vue do, too.
Plugins are a common feature of libraries and frameworks, and for a good reason: they allow developers to add functionality, in a safe, scalable way. This makes the core project more valuable, and it builds a community...
Where Does Logic Go on Jamstack Sites?
24.8.2020
Here’s something I had to get my head wrapped around when I started building Jamstack sites. There are these different stages your site goes through where you can put logic.
Let’s look at a special example so you can see what I mean. Say you’re making a website for a music venue. The most...
This vs. That
24.8.2020
Here’s a nice site from Phuoc Nguyen, who I’ve noted before has quite a knack for clever sites. This vs. That pits different related concepts against each other as a theme for an article. For example, CSS has display: none;, opacity: 0;, and visibility: hidden; and they all, on...
Offering Options for mailto: and tel: Links
21.8.2020
I generally like mailto: links. But I feel like I can smell a mailto: link without even inspecting or clicking it, like some kind of incredibly useless superpower. I know that if I’ve got my default mail client set, clicking that link will do what I want it to do, and if I want, I...
A CSS-only, animated, wrapping underline
21.8.2020
Nicky Meuleman, inspired by Cassie Evans, details how they built the anchor link hover on their sites. When a link is hovered, another color underline kinda slides in with a gap between the two. Typical text-decoration doesn’t help here, so multiple backgrounds are used instead,...
Let’s Make a Vue-Powered Monthly Calendar
21.8.2020
Have you ever seen a calendar on a webpage and thought, how the heck did they did that? For something like that, it might be natural to reach for a plugin, or even an embedded Google Calendar, but it’s actually a lot more straightforward to make one than you might think. Especially when we use...
Leading-Trim: The Future of Digital Typesetting
21.8.2020
leading-trim is a suggested new CSS property that lets us remove the extra spacing in every font so that we can more predictably style text. Ethan Wang has written about it — including how Microsoft has advocated for it — and that it’s now part of the Inline Layout Module Level 3 spec.
You’d use...
Optimize Images with a GitHub Action
20.8.2020
I was playing with GitHub Actions the other day. Such a nice tool! Short story: you can have it run code for you, like run your build processes, tests, and deployments. But it’s just configuration files that can run whatever you need. There is a whole marketplace of Actions wanting to do work...