Kevin Whitley
banner
itty.dev
Kevin Whitley
@itty.dev
I build things from time to time. :)

https://itty.dev
FUN FACT:

itty.dev includes several itty scripts in the console... with examples you can copy/paste right there to play:
July 11, 2025 at 1:25 PM
FUN FACT:

Tiny size isn't the strongest selling point of itty-router... it's how clean your code can look.

Removing virtually every shred of boilerplate while keeping it fast, Web Standards, and ultra-tiny was the original goal.

Here's a direct comparison with Hono:
July 7, 2025 at 4:45 PM
Need some quick and dirty custom id hashes?

itty.id to the rescue :)

Full API help here: itty.id?help
June 25, 2025 at 2:39 PM
When the majority of the workforce is out of work from the AI revolution, who will be buying the products/services still being sold?

That requires income that many will no longer have…

Ultimately much of our economy hinges on a massive consumer base that spends constantly. Without that, it dies.
June 18, 2025 at 6:10 PM
Still playing with this little ink demo... and I'm loving this concept of hybrid p2p state sharing.

Basically there's zero backend - the boards are shared between players only. That has limitations, but it's also SUPER fast.

Here's how it works.
June 14, 2025 at 7:26 PM
itty.af incoming.

🤫
itty.af
June 13, 2025 at 2:49 PM
The only 3rd-party component/UI in my entire trading app...

...the glorious @simeydotme.bsky.social sliders (still on v3, if you can believe it!)

This component is SUPER flexible, and SUPER sexy. The end effect is unmatched IMO. 👌
June 12, 2025 at 6:17 PM
Cool things about itty-sockets:

- auto stringifies/parses payloads
- WebSocket race conditions solved
- message queuing built in
- event handlers are resilient through disconnects
- it's insanely small (~480 bytes)

I will eventually re-release the generic ws (not ittysockets.io) version again :)
June 12, 2025 at 2:13 PM
Remember folks, take advantage of matching function signatures to just pass functions in directly!

(disclaimer: be careful with this if the args don't match)
June 12, 2025 at 1:22 PM
I built this in @svelte.dev, over a few months, from scratch (only external component is @simeydotme.bsky.social sliders).

Came from nearly a decade in @react.dev.

AMA! :)
June 10, 2025 at 5:17 PM
Quick request - everyone go here, and draw a little bit :)

ink.itty.dev/50x50

It's a p2p tech demo where the board only lives in memory (wipes after last person leaves), and players share it with each other!

No backend at all, and uses the ~500 byte ittysockets.io (free/public) for messaging. 🥳
ink.itty.dev
June 10, 2025 at 3:23 PM
I'm cooking up a fun ittysockets.io demo - may share tonight after work if I have time to polish a bit...

Premise:
- 100% peer-to-peer drawing app
- no backend/storage
- fastest connections share board state with joiners

Reply/RP if interested!
June 9, 2025 at 3:19 PM
Pro Tip to Congress:

Treat bills like devs treat PRs.

Don't try to cram too many unrelated "fixes" in a single, mega-sized PR that touches literally the entire codebase.

Almost always a bad idea.

Keep bills to single issues and let them fly through without a bunch of riders/favors to allies.
June 4, 2025 at 3:49 PM
itty-sockets 0.3.0 (service + client) is now available to testers!

for under 500 bytes, you get:
- a realtime socket messaging service
- no backend required
- simplifies WebSocket usage
- works in any environment that supports WebSockets

www.npmjs.com/package/itty...
itty-sockets
Tiny realtime messaging client in under 450 bytes. No backend needed.. Latest version: 0.3.0, last published: 13 hours ago. Start using itty-sockets in your project by running `npm i itty-sockets`. T...
www.npmjs.com
June 4, 2025 at 2:54 PM
Using the "ms" NPM library for ms conversions in your code?

Try "itty-time/ms" instead!

- 1/5th the size
- nearly 2x as fast

www.npmjs.com/package/itty...
itty-time
Ultra-small (~390 bytes) library for TTL date math and converting ms durations to and from strings.. Latest version: 2.0.1, last published: a month ago. Start using itty-time in your project by runnin...
www.npmjs.com
June 4, 2025 at 12:47 PM
itty-router just crossed 100k downloads/week! 🥳🥂

While I certainly recommend sticking with Hono if you need its framework features, itty is:

- much smaller @ ~1/14th the size
- more stable: less feature creep == smaller code
- 100% web standards
- slightly faster

www.npmjs.com/package/itty...
itty-router
A tiny, zero-dependency router, designed to make beautiful APIs in any environment.. Latest version: 5.0.18, last published: 10 months ago. Start using itty-router in your project by running `npm i it...
www.npmjs.com
June 3, 2025 at 3:54 PM
Want to style your console.log outputs for different messages/sources?

Check out: www.npmjs.com/package/itty...

Under 500 total bytes to drastically simplify adding colors/styles to console.log/warn/error output :)

Here's an example of it in use on my own project to help organize messages!
May 30, 2025 at 4:20 PM
I was this many years old when a coworker told me I could command+click on a function/var in @vscode.dev to navigate to the file/definition.

This will immediately change my life... no more hunting files down like a psychopath!
May 27, 2025 at 5:40 PM
Think I’m officially switching over to here for tech posts and sharing itty updates! I’m hoping to get the feedback loop/interactions I *used* to have when sharing ideas on Twitter!

So, if I post something worth sharing, please help me out (in the beginning) with a repost/reply/whatever!

❤️❤️❤️
May 23, 2025 at 3:43 PM
Reposted by Kevin Whitley
Interviewer: Can you exain this gap in your resume?

Me: Yes, it's set up with a Flexbox property
Interviewer: can you explain this gap in your resume?

Me: an unintended side-effect of employers doing everything in their limited powers to avoid being labeled as employers, I can not legally claim to be affiliated with any of them. I do however have the keys to a worryingly large nr of buildings
interviewer: can you explain this gap on your resume

me: yes, it’s a retail chain that sells inexpensive, moderately fashionable clothing to white suburbanites, and I worked there for a time
April 5, 2025 at 3:28 PM
Reposted by Kevin Whitley
Oh man, this is like real McCarthy stuff ….
In which the Department of Homeland Security struggles to answer a very simple question: "Is any criticism of the United States government a deportable offense?"

(From NPR here: www.npr.org/2025/03/13/n...)
March 14, 2025 at 12:01 PM
A few weeks back, I made a super tiny package to bring colors/CSS to the browser console.

Think "chalk", but:

- for the browser
- easier layering
- full CSS support
- absurdly small @ 490 bytes

Wanna try it out?
Try it in the browser console @ itty.dev :)
January 8, 2025 at 7:51 PM
As a followup continuation, here's a simpler D1 + Itty example (no CORS), for an API in under 1kB.

Itty allows all handlers to see router/route-level generics, and AutoRouter will transform any unformatted responses to JSON automatically, provide a 404, etc.
January 8, 2025 at 1:55 PM
Spinning up a simple D1 Worker with @itty.dev.

1.34KB, only a few lines, and it's working like a champ. Take that for simple syntax! :)

@cloudflare.social
January 6, 2025 at 8:25 PM