🍥kvndy
banner
kvndy.bsky.social
🍥kvndy
@kvndy.bsky.social
Unaffiliated ex Mondo Kim’s.
About to make the best chess move you’ve ever seen.
Get on the waitlist
Pinned
The most famous curve
www.desmos.com/calculator/o...
Fractal Spiral
www.desmos.com
An entirely new way of animating interactions!
An easing made from a log spiral around one is good for dragging codepen.io/kvndy/full/b...
November 10, 2025 at 4:35 PM
An easing made from a log spiral around one is good for dragging codepen.io/kvndy/full/b...
November 10, 2025 at 12:55 AM
Can someone help me fit this into my header?
November 9, 2025 at 11:44 PM
Web app navigation should traverse states instead of locations, but the Navigation API is incapable.

I tried. Believe me, I tried
November 9, 2025 at 3:36 AM
Don’t know what everyone is complaining about. My issue with Omarchy was that it has a screensaver 😱
November 8, 2025 at 3:35 AM
Once upon a time, the expected pattern for transforms was to start at zero instead of end, and set new values on completion. On interruption, devs would jump to start, block, or queue, just like what’s done with View Transitions today
November 7, 2025 at 7:25 AM
The best line of code I ever wrote
November 6, 2025 at 2:38 AM
If animations are additive and relative, they can be interrupted and retargeted without performing a style recalculation for current animated values, which happens on the main thread (even for transforms).

They only ever need discrete start and end values
November 6, 2025 at 2:26 AM
Once upon a time, the expected pattern for transforms was to start at zero instead of end, and set new values on completion. On interruption, devs would jump to start, block, or queue, just like what’s done with View Transitions today.

Can you guess where I’m going with this?
November 6, 2025 at 2:18 AM
Retargeting in Relative Animation doesn’t replace old animations with new ones that begin where they left off. All animations run to completion, using the easing function to blend together.

In terms of the Trolley Problem, it takes both tracks simultaneously and EVERYBODY DIES
November 4, 2025 at 2:14 AM
Two theories I disregard without consideration are Simulation and Many Worlds
November 4, 2025 at 12:46 AM
A graveyard of failed scrolljacking attempts litter the internet, but this achieves what no others have.

Scroll position isn’t changed, and final item position isn’t changed. Made possible by Relative Animation (animating additively to zero) and a Push Easing (from one to one)
Still best when viewed on mobile. This link is the full-page view without the editor: codepen.io/kvndy/full/b...
November 1, 2025 at 2:17 PM
Scrollbar drag and two-finger scroll have been fine tuned. Bug with touchstart between items still remains
Not Halloween themed and there’s still a few bugs and fine-tuning needed, but I released a scrolljack example codepen.io/kvndy/pen/bN...
November 1, 2025 at 3:59 AM
Tonight’s haul
November 1, 2025 at 3:55 AM
Not Halloween themed and there’s still a few bugs and fine-tuning needed, but I released a scrolljack example codepen.io/kvndy/pen/bN...
October 31, 2025 at 5:27 PM
You talkin’ to me? You talkin’ to me? You talkin’ to me? Then who the hell else are you talkin’ to? You talkin’ to me? Well, I'm the only one here. Who do the f*** do you think you're talking to?
October 31, 2025 at 4:30 PM
The problem is the same as always. I only ever need discrete, non-animated values, but here animated values (completely unnecessary style recalculations) are interfering with scroll bar position and length calculation when dragging
Haven’t published my scrolljacking source because there might be a Chromium bug affecting scrollbar dragging. Doesn’t happen in Firefox or my older Canary Chromium, but upgrading to debug will take some time
October 30, 2025 at 2:16 AM
Haven’t published my scrolljacking source because there might be a Chromium bug affecting scrollbar dragging. Doesn’t happen in Firefox or my older Canary Chromium, but upgrading to debug will take some time
October 28, 2025 at 6:21 PM
"use javascript fatigue"
October 27, 2025 at 11:09 AM
There are some cool hardware and software hackers on Fosstodon
October 25, 2025 at 8:30 PM
Chromium’s animation implementation became a tangled mess over the years, while Firefox got a fresh start with Servo docs.google.com/presentation...
Blink Animations: The Interpolation Stack
Blink Animations: The Interpolation Stack Casually responsible for over half the files in core/animation smcgruer@, 2019/08/13
docs.google.com
October 24, 2025 at 1:30 PM
This is a staggered easing curve for animating while dragging.

Note how progress starts and ends at one. Ever seen that before?

Animations have to be additive and relative, aka Blend Composition
October 24, 2025 at 12:54 PM
If Eightsleep worked offline a sizable portion of its users would do so. How then would they collect user data? Don’t you people work in tech?
October 22, 2025 at 1:53 AM
React Summit New York Metropolitan Area just doesn’t have the same ring to it
October 21, 2025 at 5:27 PM
Used to work here, but not on the rental floor. What happened to the collection was always a mystery. Glad it’s back in New York.

Free with commercials on Youtube
October 19, 2025 at 12:35 AM