Skip to content
View ramin-010's full-sized avatar

Block or report ramin-010

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
ramin-010/README.md

Rinkal Kumar (Ramin)

Backend and developer-tooling work in Node and TypeScript. I like the unglamorous parts — streams, file pipelines, protocol edge cases, the bug that only shows up on the third reconnect.

Full-stack developer at I-3 Integrated Co., Chandigarh.

Open-source contributions

Bugs I found by reading the source, reproduced with a failing test, and fixed.

Project Contribution Status
fastmcp #366embedded() silently dropped resource contents when a template's load() returned an array, producing a response that failed MCP schema validation Merged, shipped in v4.20.9
hocuspocus #1155 — an onLoadDocument hook returning the document it was handed made the server encode the whole document and apply it back to itself, on the first connection to every document Merged
hocuspocus #1157 — a document created for a load that threw was never destroyed, leaking a Y.Doc and an Awareness timer per rejected connection Merged
fastmcp #369 — the documented ping default for HTTP streaming never applied, because it keyed off a field no transport sets Open
sharp #4602JxlOptions did not declare the animation options jxl() actually accepts Open
ioredis #2187 — a failed auto-resubscribe after reconnect became an unhandled rejection, ending the process even with an error handler registered Open

Things I've built

Upfly — file-handling middleware for Node APIs. A custom Multer storage engine that streams uploads through Sharp and on to S3, GCS or Cloudinary, with a fallback stream that preserves the original if the transform fails. Published on npm.

Upfly for VS Code — drop an image into a watched folder and it converts, uploads, and returns a CDN URL. File-stability polling, loop prevention and a git-tracked-file guard, because the naive version corrupts half-written files.

ReCollect — a collaborative workspace built on Yjs CRDTs with a custom Hocuspocus WebSocket server, plus multi-model AI routing across Gemini, OpenAI, Groq and Cohere. The most technically involved thing I've built, and where most of my Redis, BullMQ and WebSocket experience comes from.

Stack

TypeScript · JavaScript · Node · Express · Next.js · React · PostgreSQL · MongoDB · Redis · BullMQ · WebSockets · Yjs · Sharp · AWS S3 · Cloudinary · GCS

B.Tech CSE, Rayat Bahra University, 2026.

Reach me at rinkalkumar737@gmail.com · LinkedIn · npm

Pinned Loading

  1. upfly upfly Public

    Complete file handling middleware for Node.js — stream-based uploads, on-the-fly processing, and direct cloud delivery to S3, GCS, and Cloudinary.

    JavaScript 6

  2. VS-Code-Extension-Upfly- VS-Code-Extension-Upfly- Public

    Zero-touch asset pipeline for VS Code — drop an image, get a CDN URL instantly. Auto-converts, uploads, and injects the link.

    TypeScript

  3. ReCollect ReCollect Public

    Collaborative workspace with real-time multi-user editing — Yjs CRDTs, a custom Hocuspocus server, and multi-model AI routing.

    TypeScript

  4. ReCollect_Backend ReCollect_Backend Public

    Real-time collaborative workspace with YJS CRDTs, multi-model AI, and a custom Hocuspocus WebSocket server.

    TypeScript

  5. upfly-frontend upfly-frontend Public

    Frontend of the Uplfy : Complete File Handling Solution (npm-package)

    TypeScript

  6. cityScouts-frontend cityScouts-frontend Public

    The is the frontend Repo for the TricityScouts

    JavaScript 1