Max Duval
banner
mxdvl.com
Max Duval
@mxdvl.com
Digital Toolmaker — I love me an SVG.

Web Tech Lead & Data Viz @ Hometrack

he/him il/lui

(parfois j’écris en Français…)
Would the CSS highlighting API work for this? Will have a crack at it!

developer.mozilla.org/en-US/docs/W...
CSS custom highlight API - CSS | MDN
The CSS custom highlight API module provides a programmatic way to target specific ranges of text defined by range objects, without affecting the underlying DOM structure. The range objects can then b...
developer.mozilla.org
November 18, 2025 at 9:59 PM
It’s such a pretty language, will definitely use for this year’s advent of code
November 17, 2025 at 8:56 PM
🙆
November 14, 2025 at 8:47 PM
I think it depends how much you’re allowed to modify the Zod schema. Ideally I’d suggest transforming the input so that when trimmed to an empty, it returns undefined or null, and apply the url validation subsequently. Alternatively a union/or could work, or even an optional + catch.
November 12, 2025 at 7:25 AM
By soliciting feedback, you’ve unlocked… dark mode beta on www.theguardian.com/help/accessi... — just click the button and set your system accordingly
Accessibility | The Guardian
Latest news, sport, business, comment, analysis and reviews from the Guardian, the world's leading liberal voice
www.theguardian.com
November 5, 2025 at 11:43 PM
1. Here’s how I avoid a FOUC on my own website: github.com/mxdvl/mxdvl/...
2. See attached video on the right side — maybe a stroke-dasharray / -dashoffset issue?
November 5, 2025 at 11:31 PM
Really neat for those late night Big O lullabies! 🌑

On iOS Safari, very smol notes:

1. Short initial flicker of light mode
2. Flickering of line ends on the right side
3. Doggos very bright
4. Blue links low contrast
5. Bright light footer

Maybe colour scheme not as welcoming as the light one?
November 5, 2025 at 11:24 PM
Il suffisait de Louvrir!
November 3, 2025 at 8:25 PM
Recap: you can use “in lieu of” instead of “instead of” and “instead of” in lieu of “in lieu of”.
November 2, 2025 at 10:48 AM
The closer you are to objects, the faster they move in your field of view. There are a lot of good YT videos covering racing games, like youtu.be/e9OriySqLjQ?... or youtu.be/e9OriySqLjQ?...
Why Racing Games Feel Slow
YouTube video by MuYe
youtu.be
November 2, 2025 at 9:02 AM
I did a talk/live demo today at @reactadvanced.gitnation.org on the merits of immutability and couldn’t resist sprinkling this tiny little gem in: github.com/mxdvl/immuta...
feat: smooth transitions · mxdvl/immutability@1303b9f
as they are supported in all major browsers as of yesterday
github.com
October 15, 2025 at 8:31 PM
The new docs are pretty good: react.dev/learn/render... and I also find some of the educators on YouTube to be pretty good
Rendering Lists – React
The library for web and native user interfaces
react.dev
October 14, 2025 at 8:54 PM
Also: if your key prop is stable, React will not re-render the component. This can be used to prevent unnecessary re-renders, as long as you have a consistent serialisation.
October 14, 2025 at 8:27 PM
One of the best resources on the subject is @joshwcomeau.com’s www.joshwcomeau.com/react/why-re...

Using composition is one of the key ways you can prevent re-rendering part of the DOM — note I browsers will re-render any modification to an SVG’s children anyways, even in vanilla JS…
Why React Re-Renders • Josh W. Comeau
In React, we don't update the DOM directly, we tell React what we want the DOM to look like, and React tackles the rest. But how exactly does it do this? In this tutorial, we'll unpack exactly when an...
www.joshwcomeau.com
October 14, 2025 at 8:21 PM
And the French “cv” one is Cheval-vapeur, which would literally be “horse-steam”

fr.wikipedia.org/wiki/Cheval-...
Cheval-vapeur — Wikipédia
fr.wikipedia.org
September 28, 2025 at 12:15 PM
Turns out it’s improper to nestle with you colleagues
September 2, 2025 at 8:52 PM
That cheque would be worth a whooping $1.46
August 26, 2025 at 7:40 AM
From the company that brought you the checkbox for “do no allow bypassing the above settings” 🙃

github.com/orgs/communi...
Clarify wording of branch protection setting · community · Discussion #50256
Select Topic Area Product Feedback Body The use of negation creates unnecessary cognitive load on one of the branch protection setting checkboxes: “Do not allow bypassing the above settings”. Align...
github.com
August 25, 2025 at 7:51 PM
Surprised by the “org” abbreviation, I must add… macwright.com/2021/02/17/t... 😜
Picking better names for variables, functions, and projects
Picking a better name than "thing"
macwright.com
August 23, 2025 at 6:41 PM