Search
How to the Get Current Page URL in Gatsby
20.12.2019
This seemingly simple task had me scratching my head for a few hours while I was working on my website. As it turns out, getting the current page URL in Gatsby is not as straightforward as you may think, but also not so complicated to understand.
Let’s look at a few methods of making it happen....
Raw GraphQL Querying
20.12.2019
GraphQL has all kinds of awesome tooling built around it. But like everything on the web, it ultimately comes down to data shootin' across the ol' network and responses coming back. If you need to talk to a GraphQL API endpoint, you don't absolutely have to use some kind of framework or library...
Two Lessons I Learned From Making React Components
19.12.2019
Here’s a couple of lessons I’ve learned about how not to build React components. These are things I've come across over the past couple of months and thought they might be of interest to you if you’re working on a design system, especially one with a bunch of legacy technical decisions and a lot...
Print-Inspired Layout on the Web
18.12.2019
I always love seeing people get inspired by print design and trying to port it over to the web. There is a much deeper history of interesting print work to draw from, and still a ton of modern work happening that eclipses most digital design work today. The web is fully capable of bold, interesting...
The Making of a “Special Series” on a WordPress Site
18.12.2019
We just ran a fancy article series here on CSS-Tricks with a bunch of different articles all answering the same question. By fancy, I mean two things:
The articles had a specially-designed template just for them. (Example)
The series has a specially-designed landing page.
One of the reasons...
The Order of CSS Classes in HTML Doesn’t Matter
17.12.2019
That’s right! And I can prove it, too. Let’s look at some CSS first:
.a {
color: red;
}
.b {
color: blue;
}
And now let’s look at some markup:
<div class="a b">Here’s some text</div>
The text is going to be blue because .b is defined last in the CSS, right? But what if we...
The JAMstack Landscape
17.12.2019
It's no big secret that Netlify invented the term JAMstack. While it's possible to embrace the JAMstack without using Netlify, it's notable that Netlify is at the very heart of the whole "JAMstack landscape."
What does "JAMstack landscape" even mean? I like the term because it sets the stage that...
Domain-Driven Design With React
16.12.2019
There is very little guidance on how to organize front-end applications in the world of React. (Just move files around until it “feels right,” lol). The truth is that we can do better. Let’s take a look at one pattern you might consider using to architect your site.
At first, you might split...
Now You See It
16.12.2019
I recently accepted a teaching position at a local college here in SoCal where I'll be spouting off whatever I know (or more likely don't know!) about HTML and CSS. It's suffice to say I was all ears (well, actually eyes) when Rachel Andrew recently published a post on teaching CSS.
The display...
Blue Beanie Day 2019
13.12.2019
November 30th, the official "Blue Beanie Day," has come and gone. I'm not sure I ever grokked the exact spirit of it, but I've written about what it means to me. Last year:
Web standards, as an overall idea, has entirely taken hold and won the day. That's worth celebrating, as the web would...
Lightning Network Wiki Page Faces Removal for Lack of Notability
13.12.2019
A slew of Wikipedia editors would like to delete the Lightning Network (LN) Wiki page because the subject matter does not hold notability. Wikipedia editors use notability as a test to find out if a topic warrants its own article. The LN article debate on Wikipedia is still raging as a few editors...
Detecting Inactive Users
13.12.2019
Most of the time you don’t really care about whether a user is actively engaged or temporarily inactive on your application. Inactive, meaning, perhaps they got up to get a drink of water, or more likely, changed tabs to do something else for a bit. There are situations, though, when tracking...
Weekly Platform News: Strict Tracking Protection, Dark Web Pages, Periodic Background Sync
12.12.2019
In this week's news: Firefox gets strict, Opera goes to the dark side, and Chrome plans to let web apps run in the background.
Let's get into the news.
Firefox for Android will block tracking content
Mozilla has announced that the upcoming revamped Firefox for Android (currently available in...
Dip Your Toes Into Hardware With WebMIDI
12.12.2019
Did you know there is a well-supported browser API that allows you to interface with interesting and even custom-built hardware using a mature protocol that predates the web? Let me introduce you to MIDI and the WebMIDI API and show you how it presents a unique opportunity for front-end developers...
How I’ve Improved as a Web Developer (and a Person) in 2019
11.12.2019
We’re sliding into the roaring twenties of the twenty-first century (cue Jazz music 🎷). It’s important that you and I, as responsible people, follow the tradition of looking back on the past year and reflect on the things that went right and wrong in the hopes of becoming the best version...
Just Sharing My Gulpfile
11.12.2019
Seemingly out of the blue, the Gulp processing I had set up for this site started to have a race condition. I'd run my watch command, change some CSS, and the processing would sometimes leave behind some extra files that were meant to be cleaned up during the processing. Like the cleanup tasks...
Quoting in HTML: Quotations, Citations, and Blockquotes
10.12.2019
It’s all too common to see the incorrect HTML used for quotes in markup. In this article, let’s dig into all this, looking at different situations and different HTML tags to handle those situations.
There are three major HTML elements involved...
A Handy Sass-Powered Tool for Making Balanced Color Palettes
9.12.2019
For those who may not come from a design background, selecting a color palette is often based on personal preferences. Choosing colors might be done with an online color tool, sampling from an image, "borrowing" from favorite brands, or just sort of randomly picking from a color wheel until...
Techniques for Rendering Text with WebGL
6.12.2019
As is the rule in WebGL, anything that seems like it should be simple is actually quite complicated. Drawing lines, debugging shaders, text rendering… they are all damn hard to do well in WebGL.
Isn’t that weird? WebGL doesn't have a built-in function for rendering text. Although text seems like...
Weekly Platform News: Upgrading Navigations to HTTPS, Sale of .org Domains, New Browser Engine
5.12.2019
In this week's roundup: DuckDuckGo gets smarter encryption, a fight over the sale of dot org domains, and a new browser engine is in the works.
Let's get into the news!
DuckDuckGo upgrades and open-sources its encryption
DuckDuckGo has open-sourced its “Smarter Encryption” technology that enables...