Author of low-level libraries for Node.js. Pure-JavaScript implementations of core internet protocols - QUIC/HTTP3, TLS, DNSSEC, STUN/TURN, WebRTC, SMTP - alongside supporting libraries for real-time media, data formats, storage, and runtime utilities.
These libraries share a single principle: every layer of the stack should be controllable from code. Running nginx, BIND, Postfix, or coturn next to your Node.js application is the standard answer - but it limits you to what their configuration files allow, makes the system hard to extend in directions the original authors didn't anticipate, and puts a process boundary between every layer. Each library here removes that compromise. The protocol becomes a function you write, not a config you maintain - DNS records computed at runtime per query, cryptographic keys held in your own code, every packet visible to your handler.
The libraries are also intentionally narrow. Each one implements its protocol and stops there. Every decision the protocol doesn't dictate - storage, business logic, signaling transport, architectural choices - stays in your code. They are libraries to compose, not frameworks to inherit.
When that's true, infrastructure stops being something you assemble around your code and becomes part of it. A two-person team can ship a system that used to require a dedicated SRE. Edge deployments don't have to ship without DNS, mail, or media handling. Geo-routing, canary releases, and health-driven failover stop being managed-service features and become a few lines of JavaScript. When something fails at the protocol level, you read source - your source. That's the Node.js these libraries are working toward.
| Project | Description |
|---|---|
| โก quico | First full QUIC and HTTP/3 implementation in pure JavaScript for Node.js. |
| ๐ lemon-tls | TLS 1.3 / 1.2 implementation with full control over cryptographic keys and the record layer. |
| ๐ cert-manager | ACME client with automatic certificate management. Zero dependencies. |
| ๐ dnssec-server | Handler-based authoritative DNS - answers computed per query in JavaScript, DNSSEC signed at runtime, no zone files. |
| ๐ฐ๏ธ turn-server | Embeddable STUN/TURN client and server. Full RFC coverage, zero dependencies. |
| ๐ง email-server | Full mail stack - SMTP, IMAP, and POP3 (server + client) with DKIM, SPF, DMARC, and MTA-STS built in. |
| Project | Description |
|---|---|
| ๐ก stable-webrtc | WebRTC for Node.js and browsers, focused on signaling reliability and connection state in production. |
| ๐ฅ webrtc-server | Server-side WebRTC stack with a browser-compatible API - SFU, RTP, data channels. |
| ๐๏ธ rtp-packet | RTP, RTCP, and SRTP packetization for Node.js. |
| ๐๏ธ media-processing | WebCodecs-compatible API for encoding, decoding, muxing, and demuxing - backed by FFmpeg subprocesses. |
| Project | Description |
|---|---|
| ๐พ uni-indexeddb | Unified key-value storage with the same API across browser (IndexedDB) and server (LevelDB). |
| ๐๏ธ litepack | Schema-based binary encoding for JavaScript - compact, fast, zero dependencies. |
| Project | Description |
|---|---|
| ๐งฎ bloom-filter-numbers | Bloom filter optimized for numeric IDs, using splitmix64 and XOR fingerprinting. |
| ๐ flat-ranges | Merge, subtract, and invert flat numeric ranges. |
| ๐ฒ pcg64dxsm | Bit-compatible PCG64-DXSM PRNG. WASM-accelerated, NumPy-compatible. |
| ๐ deep-events | Path-based event system covering events, state, DOM, workers, and lifecycle cleanup. |
| ๐ hint-locale | Locale detection from browser signals and HTTP headers - country, language, confidence scoring. |
| ๐งญ js-runtime-environment | Detect the JavaScript runtime - Browser, Node.js, Deno, Bun, Electron, and more. |
Building production-grade implementations of the entire internet stack in pure JavaScript is more work than one person can finish alone. These projects benefit from anyone willing to read an RFC closely, find the edge case nobody else has hit, or push a library in directions the original draft never imagined. Issues, pull requests, and design discussions are open on every repository - particularly welcome from protocol implementers, security researchers, and engineers running these stacks in production.
If your team relies on any of these libraries, sponsorship through GitHub Sponsors supports continued development and maintenance.
