Jason Kuhrt
banner
kuhrt.me
Jason Kuhrt
@kuhrt.me
Software artisan. Ex @the-guild.dev prisma Dialogue littleBits. Creator Graffle Molt Paka Nexus. In an alternate universe ⊻ Coureur de Bois, Architect, Athlete, Lego Master Builder.

👨‍💻 https://github.com/jasonkuhrt
Cool to see this @grain.social. This year I migrated off of Instagram to my personal website kuhrt.me/capturing. But I do enjoy a healthy social experience. Maybe that's what Grain is/will be/remain as :). I am sceptical that pretty much any social platform of sufficient "success" (scale) will ...
Capturing – Kuhrt
Images by Jason Kuhrt
kuhrt.me
November 12, 2025 at 7:08 PM
Thanks for that poetry, Claude. ✨

#ai #types #rust #scala
November 11, 2025 at 11:51 PM
On design: Thinking of 'One obvious way' versus 'expressiveness' (e.g. Python versus Ruby), not as a dichotomy but as a continuum, have the expressiveness AND then allow layering on the 'obvious way' for <thing> ([mono]repo, package, file, block, ...). In other words when designing an interface, ...
November 9, 2025 at 5:58 PM
I would appreciate a TypeScript LSP MCP, Claude Code could turn a laborious non-deterministic process (easily 1+ minutes on large code bases) of identifier renames into a few seconds deterministic process. For now I try to do that for Claude but steals some degree of flow from me.
November 9, 2025 at 4:58 PM
Thank you LambaTest for becoming Graffle's first recurring monthly sponsor ❤️! I couldn't be more delighted 🍻. Check them out at www.lambdatest.com.
November 1, 2025 at 12:22 AM
I’m looking for my next opportunity 👨‍💻, short/long contracts or part/full time. My experience is 15 years across the stack and architecture often focused on open source and next generation developer tooling, libraries, frameworks in the TypeScript space. If your company or project is ...
October 27, 2025 at 7:17 PM
TIL! How subtle is that, damn. Seems like a good candidate for a lint rule.
learned something new in #TypeScript today. an arrow function is only analyzed as a never-returning call if it has an explicit annotation on the variable name (distinct from a return type on the arrow function)
github.com/microsoft/Ty...
github.com/microsoft/Ty...
October 27, 2025 at 2:44 AM
Musing over an idea I'm calling "Autotest" to scratch my own itch that marries JSDoc tests into generated test files with comprehensive support across types and terms (values). Would you use this? Thoughts? github.com/jasonkuhrt/k...
Autotest: Vitest plugin for automated testing at type and term levels · Issue #60 · jasonkuhrt/kit
Autotest A Vitest plugin for automated testing at the type and term levels. Workflow (once) You register AutoTest Vitest plugin (once) You add a .autotest.ts file adjacent to a .ts file you want to...
github.com
October 27, 2025 at 12:00 AM
I've been making big strides with Graffle the past couple weeks, such as around the static builder and support for variables, docs, and type level string parser. Accordingly I revamped docs to cover everything one should need to know about these features. Here's a rundown:
October 25, 2025 at 6:24 PM
Recent improvements to github.com/jasonkuhrt/flo:
- project selection (default is cwd)
- interactive project and issue selection via list
- flo start/end aliases for flo/flo rm
- polish like flo end cd'ing back to project
GitHub - jasonkuhrt/flo: GitHub issues → Git worktrees → Claude context. Create worktrees from GitHub issues with automatic Claude setup.
GitHub issues → Git worktrees → Claude context. Create worktrees from GitHub issues with automatic Claude setup. - jasonkuhrt/flo
github.com
October 25, 2025 at 4:16 PM
So last month I gave two talks at GraphQL Conf in Amsterdam and it was a lot of fun and challenge for me but unfortunately a glitch means my talk on Polen (polen.js.org) will never see the light of day, though my shorter talk on Graffle (graffle.js.org) will.
October 25, 2025 at 3:54 PM
I've seen lots of agentic workflow tools popping up this year. I started my own called flo github.com/jasonkuhrt/flo :) -- Starting simple but will iterate over time. So far combines use of Claude Code, GitHub issues, Git worktrees, and some naming conventions.
October 19, 2025 at 5:41 AM
I am excited for voidzero.dev/posts/announ... and will begin using it this week on some of my projects (more on that soon). Thanks @vite.dev @vitest.dev etc. and all the peeps involved reaching this point. Every tool in the chain scratches an itch I have.
Announcing Vite+
Introducing Vite+, a unified toolchain for JavaScript.
voidzero.dev
October 15, 2025 at 6:22 PM
Today I shipped a static document builder for Graffle, learn more here graffle.js.org/guides/gener... (PR github.com/graffle-js/g...). It unlocks new usage patterns like defining queries outside of a Graffle instance, at module level, totally static, reusable, passable to instance.
October 3, 2025 at 1:45 AM
Today is my last day at @the-guild.dev! I still intend to continue my work on projects like polen.js.org, and graffle.js.org. I've been head down for a few months culminating to my talks at @graphql.org Amsterdam conference two weeks ago. Feel a bit burnt out but also excited for new adventures.
Polen
A framework for delightful GraphQL developer portals
polen.js.org
September 30, 2025 at 1:55 PM
@hiogawa.bsky.social‬ thanks for your work on Vite RSC, using it this week on a framework we're building at @the-guild.dev! I ran into one issue with RR which is that our routes.ts module has virtual imports. I adjusted your rr plugin code to use environment module runner import instead ...
July 9, 2025 at 3:53 PM
I am thrilled (and nervous 😬) to have been selected as a speaker to share work we’re doing at @the-guild.dev on GraphQL API documentation. It’s still super early but being worked on in open at github.com/the-guild-or....
June 17, 2025 at 5:57 PM
I pushed my knowledge/muscle-memory on Vite Dev/NodeJS Package SubPaths/Tree Shaking/Isomorphic FS/Path/...

github.com/the-guild-or...
github.com
June 9, 2025 at 7:56 PM
Hello github.com/jasonkuhrt/kit

Over the past weeks I have been passively factoring out utilities I use across my projects. For now my niche thing and changing constantly, but I am creating it as a proper library. It has hints of @effect-ts.bsky.social mixed with es-toolkit/ramda/fs-jetpack/...
GitHub - jasonkuhrt/kit: Standard Library for TypeScript (WIP)
Standard Library for TypeScript (WIP). Contribute to jasonkuhrt/kit development by creating an account on GitHub.
github.com
June 6, 2025 at 1:41 PM
I want to make a @zed.dev extension that leverages @typescriptlang.org semantic analysis allow syntax theme authors (including would be me :)) to apply rules 🧑‍🎨 also on arbitrary static analysis ala. what @typescript-eslint.io is doing for listing. Leverage TS Go to make it perform.
May 31, 2025 at 4:20 PM
@ieni.dev! Please bring Glimpse ( marketplace.visualstudio.com/items?itemNa...) to @zed.dev! ❤️ This time you'd get to write it in 🦀😄. I think it would integrate really nicely with Vim concept of key chords since they do exactly that: <...key> -> do something 🚀.
May 30, 2025 at 1:29 PM
Reposted by Jason Kuhrt
This is going to be great, we can finally steer people away from using POST by "default" (PO's require effort et all) on GraphQL because QUERY is an ideal replacement 😍
May 22, 2025 at 8:39 AM
I'm so happy @zed.dev exists. Finally made the switch yesterday. Never going back to VSCode. Thanks for the great last ~7 years. But it became too buggy and slow for me on an hourly basis. 🤷 (being a vim user definitely made me hit more rough edges than otherwise would have).
May 24, 2025 at 4:45 AM
Went down a rabbit hole on TS "... cannot be named ..." error. There appears to be a bug in TS with ESM re-exports and namespaces, but I'm not sure! Tricky whatever it is. I've tried to document the issue clearly here (+solution): github.com/jasonkuhrt/r.... TS issue here: github.com/microsoft/Ty...
GitHub - jasonkuhrt/repro-ts-lib-types-reference
Contribute to jasonkuhrt/repro-ts-lib-types-reference development by creating an account on GitHub.
github.com
May 15, 2025 at 2:16 AM