Jordan Eldredge
banner
capt.dev
Jordan Eldredge
@capt.dev
Engineer on http://relay.dev at Meta | Made http://webamp.org | Hacking on GraphQL Server for TypeScript http://grats.capt.dev
You know you've arrived when someone makes a short-form video in which they point enthusiastically at a thing you made
November 12, 2025 at 1:30 AM
This weekends exploration for the Winamp Skin Museum: what if you could algorithmically doom scroll Winamp skins 🤔
November 10, 2025 at 9:16 PM
Shipped Grats v0.0.34 🚀
October 9, 2025 at 1:33 AM
Got into a conversation with a friend last night about implementing permissions in GraphQL/Grats.

Inspired me to write a guide for the Grats docs outlining three strategies that work well. One that I think is particularly elegant is Permission Tokens leveraging Grats' Derived Contexts.
October 8, 2025 at 4:21 PM
I built Grats' Derived Contexts on a whim, but it ended up being a simple yet powerful compile-time dependency injection engine.

A field just defines its dependencies via typed arguments and Grats ensures it gets passed a value at runtime.
October 8, 2025 at 4:15 PM
As an example: My personal blog (Next.js/RSC) also exposes a GraphQL server: jordaneldredge.com/api/graphql/

I just sprinkled some (68 according to grep) `@gql*` docblock tags around and got it for free by running `npx grats`.
October 4, 2025 at 12:39 AM
It's been especially gratifying to see agents hit cases that I know are unintuitive and then instantly know how to resolve the issue, and get a clean build on their next attempt.
October 2, 2025 at 12:04 AM
I designed Grats' around "error driven development": each error provides specific guidance on how to fix it.

This has proved a good fit for AI agents.

I asked Claude to find an interesting SQLite DB on my computer and build an API using Grats and it did without any help!
October 1, 2025 at 11:59 PM
Prototyping a version of the Grats playground where you can actually execute your schema right in your browser (in a worker).
September 24, 2025 at 6:25 AM
Webamp, the NPM library, now has a proper docs site. If you've ever wanted to add a Webamp player to your site, now might be the time:

docs.webamp.org
June 23, 2025 at 3:39 AM
React <ViewTransition /> is pretty good
June 12, 2025 at 2:04 AM
May 16, 2025 at 4:18 PM
Perfect. I can bind the “action” button on my phone to “buy a new phone”.
May 8, 2025 at 3:09 PM
Nice little addition to the footer of my site
April 1, 2025 at 4:45 AM
March 8, 2025 at 7:03 PM
Been playing with a reusable client-side GraphQL wrapper around the @archive.org's public REST APIs. I feel like this could make it easier for folks to write interesting apps around this data.

lively-sundae-7c90e7.netlify.app
December 21, 2024 at 9:09 PM
Root GraphQL fields are now easier to define in Grats. Just shipped v0.0.30 with support for root fields: grats.capt.dev/docs/docbloc...
December 16, 2024 at 6:44 AM

Looks like this was disucssed on Hacker News roday: news.ycombinator.com/item?id=4221...
November 23, 2024 at 1:17 AM
VS Code's debugger is so good. Just ran my tests from the terminal, set a breakpoint in my JS Code and was able to step into the WASM code I'm debugging and inspect the memory with the hex editor plugin.

Impressive how well it "just works".
November 9, 2024 at 7:00 AM