A brilliant site for comparing common component patterns across
most of the major front end frameworks. Want to learn Svelte and
already know React? Select both, pick the pattern you're wanting to
…
I have a tendency to prefer the kind of "inside-out" control
that Kent is advocating in this piece, though I've never head it
called "inversion of control" before. The idea of giving your users
the …
📖
Pass API Data to the Stylesheet with CSS Variables
I keep running into the same problem: how to set a style attribute in the CMS and have that be dynamically rendered on the front-end, without relying on inline styles. Turns out it's a great use case for CSS variables!
An adaptation of Robert C. Martin's book Clean Code for
JavaScript (ES6+) full of best practice examples and (probably more
importantly) common anti-patterns that they can …
Notes from my second fully remote conference, this time Sparkbox's UnConference. Being able to freely access talks from the US is a rare bonus of everything going on right now, and this did not disappoint. Musical cameos, great talks on UX, accessibility, design systems, and amazing speakers. Great event (despite the time difference).
📖
Adding Search: Refining The Frontend (Algolia, Gatsby, Craft CMS - Part 3)
The search page is live, the index is populated, but it all looked a bit rubbish and it didn't quite work as well as I wanted. Now it's using custom-styled components, queries are tracked/stored via the URL for persistence, and you can filter results based on category.
Customising HTML lists often means sacrificing standard browser typesetting bonuses, like hanging indents. But with a little bit of modern CSS, you can get them back again, whilst still getting to use custom counters – like emoji 🚀
Notes from the 2020 Jamstack Conf. Some interesting dives in the Jamstack community and various applications of Jamstack technologies, with tweet threads as usual.
The infamous frontend divide, the feeling that
JavaScript-everywhere has caused a schism in what a frontend
developer is. Should they be split into JavaScript
Engineer and UI …
I've been thinking a lot about an article I read recently that called out technical writing online for being overly trusted. But shouldn't that same argument apply more universally to third-party code coming from any source?
Heydon's video is an excellent overview of their much-loved owl
selector and "stack" layout pattern. I actually didn't realise that
Heydon was the original "inventor" of the owl, though it makes
a …
Apparently, ARIA live regions don't play nicely with React. Whilst they work fine in many browsers, they simply don't function in VoiceOver without some workarounds.
A halfway solution to a design pattern that I see often, but have yet to find an easy way to implement: text that wraps so it is always fattest in the middle, and thinnest at either end.
I've been saying for a couple of years that we are on the brink
of a "fluid design" revolution in front-end development, similar to
what happened around the late 2000s with "responsive design". …
The color-mix property enables a lot of interesting functionality when you realise that you can use it to mix transparency into colours, including design tokens.
A comprehensive guide to ensuring simple charts and graphs are
accessible. Focuses on D3, but most of the tips and suggestions can
easily be ported to any visual UI. These …
I have long sought a web-native way to achieve sidenotes with
CSS, and it turns out Eric is in the same boat. The new Anchor
Position API in CSS is seeking to solve that problem, and whilst it
…
A complete overview of the most recent WCAG 2.2 spec as it
enters RC status, including quick overviews on the most common
solutions to meet each new success …
Storybook encourages setting the same arguments over and over and over again, but this is a pain to maintain. There is a better, DRYer approach, it's just not well documented.
Migrating content between fields in Craft is not as simple as it might be. In the wake of Craft 5, I've been getting a lot of practice, and wanted to write up some of the techniques I've been using.
Astro and Netlify largely play well together, but I've found a few aspects of redirects and URL design that contain the odd foot-gun I had to work around.