Rendering the WordPress philosophy in GraphQL
18.1.2021
WordPress is a CMS that’s coded in PHP. But, even though PHP is the foundation, WordPress also holds a philosophy where user needs are prioritized over developer convenience. That philosophy establishes an implicit contract between the developers building WordPress themes …
The post...
AnimXYZ
18.1.2021
There are quite a few CSS animation libraries. They tend to be a pile of class names that you can apply as needed like “bounce” or “slide-right” and it’ll… do those things. They tend to be pretty opinionated with …
The post AnimXYZ appeared first...
State of JavaScript 2020
18.1.2021
We rounded up a bunch of published 2020 annual reports right before the year ended and compiled them into a big ol’ list. The end of the list called out a couple of in-progress surveys, one of which was …
The post State of JavaScript 2020 appeared first on CSS-Tricks.
You can support...
On Auto-Generated Atomic CSS
15.1.2021
Robin Weser’s “The Shorthand-Longhand Problem in Atomic CSS” in an interesting journey through a tricky problem. The point is that when you take on the job of converting something HTML and CSS-like into actual HTML and CSS, there are edge …
The post On Auto-Generated Atomic...
3 Approaches to Integrate React with Custom Elements
15.1.2021
In my role as a web developer who sits at the intersection of design and code, I am drawn to Web Components because of their portability. It makes sense: custom elements are fully-functional HTML elements that work in all modern …
The post 3 Approaches to Integrate React with Custom Elements...
Proper Tabbing to Interactive Elements in Firefox on macOS
15.1.2021
I just had to debug an issue with focusable elements in Firefox. Someone reported to me that when tabbing to a certain element within a CodePen embed, it shot the scroll position to the top of the page (WTF?!). So, …
The post Proper Tabbing to Interactive Elements in Firefox on macOS...
Building an Ethereum app using Redwood.js and Fauna
15.1.2021
With the recent climb of Bitcoin’s price over 20k $USD, and to it recently breaking 30k, I thought it’s worth taking a deep dive back into creating Ethereum applications. Ethereum, as you should know by now, is a public (meaning, …
The post Building an Ethereum app using Redwood.js and Fauna...
How to Make GraphQL and DynamoDB Play Nicely Together
14.1.2021
Serverless, GraphQL, and DynamoDB are a powerful combination for building websites. The first two are well-loved, but DynamoDB is often misunderstood or actively avoided. It’s often dismissed by folks who consider it only worth the effort “at scale.”…
The post How to Make GraphQL...
Collective #644
14.1.2021
Front-End Performance Checklist * Bringing Spacer GIFs Back * Three-projected-material * 2020 JavaScript Rising Stars
The post Collective #644 appeared first on Codrops
Dynamic, Conditional Imports
13.1.2021
With ES Modules, you can natively import other JavaScript. Like confetti, duh:
import confetti from 'https://cdn.skypack.dev/canvas-confetti';
confetti();
That import statement is just gonna run. There is a pattern to do it conditionally though. It’s like this:
(async ()
…
The post...
Fading in a Page on Load with CSS & JavaScript
13.1.2021
Louis Lazaris demonstrates a very simple way of doing this.
Hide the body (with JavaScript) right away with opacity: 0
Wait for all the JavaScript to execute
Unhide the body by transitioning it back to opacity: 1
Like this:
CodePen…
The post Fading in a Page on Load with CSS &...
Two Issues Styling the Details Element and How to Solve Them
13.1.2021
In the not-too-distant past, even basic accordion-like interactions required JavaScript event listeners or some CSS… trickery. And, depending on the solution used, editing the underlying HTML could get complicated.
Now, the <details> and <summary> elements (which combine to form...