Blog

Technical deep-dives into what I build

2026-02-1012 minAPI Gateway & Rate Limiter

Building an API Gateway & Rate Limiter from Scratch in Node.js

How I implemented three rate limiting algorithms, an API key system, and a real-time analytics dashboard, all without a database.

system-designnode.jstypescriptmiddlewarerate-limiting
Read more →
2026-02-1015 minReal-Time Collaborative Editor

Building a Real-Time Collaborative Editor with Operational Transform in Node.js

How I implemented Operational Transform from scratch to build a Google Docs-style collaborative editor with WebSockets and zero database dependencies.

websocketsoperational-transformreal-timenode.jstypescript
Read more →
2026-02-1510 min@gagandeep023/json-view

Building a JSON Tools Package from Scratch in TypeScript

How I built a zero-dependency npm package for JSON formatting, recursive diffing, and un-stringifying nested JSON, then integrated it as a client-side tool in my portfolio.

typescriptnpmjsonopen-sourcedeveloper-tools
Read more →
2026-02-2214 min@gagandeep023/log-analyzer

Building a Log Analyzer CLI as a Zero-Dependency npm Package

How I built a JSONL log analyzer from scratch with percentile computation, four anomaly detection algorithms, pattern matching, and Markdown/JSON report generation, all with zero runtime dependencies.

typescriptnpmclilog-analysisanomaly-detectiondeveloper-tools
Read more →
2026-03-0110 min@gagandeep023/signal-hop

Building Signal Hop: A Browser Game as an npm Package

How I built an original reflex/strategy browser game using Canvas 2D, procedural graph generation, and requestAnimationFrame, then packaged it as a reusable React component on npm.

typescriptnpmcanvasgame-devreact
Read more →
2026-03-0110 min@gagandeep023/drift-well

Building Drift Well: A Physics Game as an npm Package

How I built a gravity-based physics game using Canvas 2D, vector math for gravitational fields, and drag-to-aim controls, then packaged it as a reusable React component on npm.

typescriptnpmcanvasgame-devphysics
Read more →
2026-03-0110 min@gagandeep023/glyph-lock

Building Glyph Lock: A Pattern-Deduction Game as an npm Package

How I built a pattern-deduction puzzle game with 8 composable pattern algorithms, progressive difficulty, and a color grid system, then packaged it as a reusable React component.

typescriptnpmcanvasgame-devpuzzle
Read more →
2026-03-0110 min@gagandeep023/spore-field

Building Spore Field: A Territory Control Game as an npm Package

How I built a turn-based territory control game on a hex grid with AI opponents, nutrient sacrifice mechanics, and spreading spore colonies, then packaged it for npm.

typescriptnpmcanvasgame-devstrategy
Read more →
2026-03-0110 min@gagandeep023/pulse-weave

Building Pulse Weave: A Rhythm-Timing Game as an npm Package

How I built a rhythm-timing game with rotating concentric rings, gap detection math, and one-button gameplay, then packaged it as a reusable React component on npm.

typescriptnpmcanvasgame-devrhythm
Read more →
2026-02-1518 min@gagandeep023/expose-tunnel

Building a Self-Hosted Tunnel Service as an npm Package in TypeScript

How I built a self-hosted alternative to ngrok and localtunnel from scratch, using WebSockets, wildcard DNS, and an EC2 relay server to expose local ports to the internet via custom subdomains.

websocketsnetworkingtypescriptnpmself-hostedinfrastructure
Read more →