Open Source — Projects I Maintain
I build and maintain Valkey-native packages for the Node.js ecosystem — the client-stack building blocks that let Node.js applications talk to Valkey without a single Redis-branded dependency in the tree.
Why a Valkey-Native Ecosystem?
Valkey is the Linux Foundation fork of Redis, created after Redis changed its license in 2024. Its wire protocol (RESP) and Pub/Sub commands are byte-for-byte identical to Redis — but the Node.js ecosystem around it was not. Core client infrastructure (parsers, error models, Socket.IO adapters) still carried Redis naming, Redis dependencies, and Redis-controlled publishing.
A Valkey ecosystem should not have its core infrastructure owned by Redis-branded packages it doesn't control. So I ported the battle-tested implementations — keeping every proven code path intact — and re-targeted them for Valkey.
The Stack
The packages form a layered client stack. I created and maintain the two foundation layers solo; the Socket.IO scaling layer was built with the Stalwart Team for the Valkey Hackathon conducted by React Hyderabad.
Application code
└── socket.io-valkey-adapter ← cross-instance broadcast (Stalwart Team · Valkey Hackathon by React Hyderabad)
└── Valkey client (iovalkey)
└── valkey-parser ← RESP wire-protocol decoder (solo project)
└── valkey-errors ← shared failure identity (solo project)valkey-errors
v1.0.1 · MIT · Solo project
A shared error model for the whole stack — five classes, zero dependencies, 59 lines. Makes instanceof the failure-handling contract across every layer.
npm · GitHub · Deep dive →
valkey-parser
v1.0.0 · MIT · Solo project
The RESP wire-protocol decoder — raw TCP bytes in, JavaScript values out. Zero-copy fast path, adaptive buffer pool, built for millions of replies per second.
npm · GitHub · Deep dive →
socket.io-valkey-adapter
v0.1.1 · MIT · Stalwart Team · Valkey Hackathon by React Hyderabad
The horizontal-scaling layer for Socket.IO on Valkey Pub/Sub. 137 tests passing, certified against standalone Valkey 8 and a real 6-node cluster.
npm · GitHub · Deep dive →
The Porting Philosophy
Every package follows the same discipline:
- Don't rewrite what's proven. The upstream implementations (
redis-errors,node-redis-parser,@socket.io/redis-adapter) carry years of production hardening. A file-by-file diff against upstream confirms zero functional differences — every condition, loop, and wire format is unchanged. - Remove all Redis branding. A Valkey ecosystem package should not depend on or advertise Redis-named modules.
RedisErrorbecomesValkeyError;redis-errorsbecomesvalkey-errors. - Test against real Valkey. The adapter's full suite runs against standalone Valkey 8 and a real 6-node Valkey Cluster (3 masters, 3 replicas) in CI on every push.
The result: teams migrating off Redis keep the exact architecture they trust, with a clean, Redis-free dependency tree and zero license risk.
Contributions to Major Libraries
I also contribute upstream — merged pull requests in Axios, React Redux, Nodemailer, Tailwind CSS, and Valkey's official Node.js client (iovalkey). See the contributions page for the full stories and PRs.
Read the Deep-Dives
Start at the bottom of the stack and work up: