// ๐ก Daily system design practice in TypeScript
const om = {
name: "Om Dandagvhal",
role: "Final-Year B.Tech IT @ SITRC, Nashik",
class: "BE 2026-27 | Group 37 | Roll 70",
pronouns: "he/him",
location: "Nashik, Maharashtra ๐ฎ๐ณ",
email: "omd4485@gmail.com",
phone: "+91 9970055620",
currently: [
"๐ Day 6: Distributed Backend System Design",
"๐ Capstone: Multimodal Sentiment Analysis (MinHash LSH)",
"๐ฏ Actively applying for Summer 2026 Backend Internships",
"๐ฆ Published: @omdd/agent-loop-guard on npm"
],
interests: ["Distributed Systems", "API Design", "Cloud Native", "Open Source", "AI Safety"],
funFact: "I ship one production-ready backend system every week ๐ฆ",
philosophy: "Learn by building. Ship by shipping. Improve by iterating."
};|
|
|
13 โญ โข npm: agent-loop-guard-js
Prevents runaway loops, repeated tool calls, uncontrolled execution in AI agents
Provider-independent โข Zero deps โข TypeScript-first โข Loop detection
๐ ๏ธ Repo โข ๐ฆ npm โข โญ 13
| Package | Version | Links |
|---|---|---|
| agent-loop-guard-js | ๐ฆ npm โข ๐ ๏ธ Repo โข ๐ Bundle |
TypeScript โข Redis โข BullMQ
| Day | System | Key Technologies | Tests |
|---|---|---|---|
| Day 1 | Rate Limiter | Token Bucket, Sliding Window, Leaky Bucket, Fixed Window, Sliding Log โข Redis | โ |
| Day 2 | JWT Auth | RBAC, Refresh Tokens, Rotation, Blacklisting, bcrypt | โ |
| Day 3 | GraphQL Gateway | Schema Stitching, Redis L1/L2 Cache, Rate Limiting, Auth | โ |
| Day 4 | Notification System | WebSocket + Redis Pub/Sub, Multi-channel, Retry + DLQ | โ |
| Day 5 | Job Queue | BullMQ + Redis, Priority, Retry, DLQ | 45 tests โ |
| Day 6 | Backend System | Service Mesh, Distributed Tracing, Circuit Breakers | ๐ |
| Project | Description | Key Tech |
|---|---|---|
| ๐ธ๏ธ Distributed Web Crawler | Scalable MERN crawler with distributed queue, politeness policies, rate limiting | MERN, TS, Redis, BullMQ |
| ๐๏ธ DB Sharding & Replication | Consistent hashing + Range sharding, Single-leader replication, Quorum reads, Vector clocks | JS, Zero deps, node:test |
| โ๏ธ Distributed Task Orchestrator | Priority queues, State persistence, Reliable execution | TS, Redis |
| ๐ฆ Job Queue (Day 5) | BullMQ + Redis, Priority queues, Retry with exponential backoff, DLQ | 45 tests โ |
| โ๏ธ Container Scheduler | Docker orchestration, Resource allocation, Health checks | MERN, TS, Docker |
| Project | Description | Key Tech |
|---|---|---|
| ๐ก๏ธ agent-loop-guard โญ 13 | AI agent safety library โข Loop detection โข Tool call limiting โข Zero deps โข Published on npm | TS, Zero deps |
| Multimodal Sentiment Analysis | MinHash LSH deduplication โข Customer feedback analysis โข Nearest neighbor search | Python, MinHash LSH |
| AI Code Execution Arena | Sandboxed code execution โข Multi-language support โข Resource limits | TS, Sandbox |
| Project | Description | Key Tech |
|---|---|---|
| ๐ GitHub-like Platform | Native Git storage (nodegit) โข CI/CD (BullMQ) โข Webhooks โข Code search โข Monaco Editor | MERN, TS, nodegit, BullMQ |
| ๐ฎ LeetCode Clone | Code execution sandbox โข Real-time submissions โข Problem management | MERN, TS |
| ๐๏ธ Advanced System Design MERN | Caching layers โข Load balancing โข Service mesh | MERN, TS |
| ๐๏ธ Day 6: Distributed Backend System | Service mesh patterns โข Distributed tracing โข Circuit breakers | TS, Service Mesh |
| Project | Description | Key Tech |
|---|---|---|
| ๐๏ธ DB Sharding & Replication | Consistent hashing + Range sharding โข Single-leader replication โข Quorum reads โข Vector clocks โข Zero deps | JS, node:test |
| ๐ง Multimodal Sentiment Analysis | MinHash LSH deduplication โข Customer feedback analysis โข Nearest neighbor search | Python, MinHash LSH |
| ๐ช OmCoin ERC-20 | Solidity โข Hardhat โข OpenZeppelin โข Ethers.js โข Deployed on testnet | Solidity, Hardhat |
| ๐ฐ๏ธ GOD'S EYE | Real-time intelligence dashboard โข Flights, vessels, AQI, CCTV, seismic โข 24 Indian cities | JS, Real-time APIs |
+ ๐ง Day 6 โ Distributed Backend System Design [IN PROGRESS]
+ ๐ง Capstone โ Multimodal Sentiment Analysis (MinHash) [WEEK 2 of 12]
+ ๐ฏ Goal โ Land a Summer 2026 Backend Internship [ACTIVELY APPLYING]
+ โ
Done โ Day 5 Job Queue (BullMQ, 45 tests) [DONE]
+ โ
Done โ Day 4 Notification System (WS + Redis) [DONE]
+ โ
Done โ Day 3 GraphQL Gateway (Schema Stitching) [DONE]
+ โ
Done โ Day 2 JWT Auth (RBAC, Refresh, Rotation) [DONE]
+ โ
Done โ Day 1 Rate Limiter (5 algorithms) [DONE]
+ โ
Done โ agent-loop-guard (Published on npm) [DONE]| Quarter | Goal | Status |
|---|---|---|
| Q1 (JanโMar) | Master backend basics (Node, DB, API, Redis) | โ 100% |
| Q2 (AprโJun) | Build 6 production backend systems (Weekly) | ๐ 83% (5/6) |
| Q3 (JulโSep) | Capstone + Advanced Distributed Systems | ๐ In Progress |
| Q4 (OctโDec) | Land Summer 2026 Internship + Final Year Project | โณ Upcoming |
| Detail | Value |
|---|---|
| Degree | B.Tech Information Technology |
| Institute | SITRC, Nashik (Savitribai Phule Pune University) |
| Graduation | 2027 |
| Current Year | Final Year (4th Year) |
| Roll / Group | Roll 70 โข Group 37 |
| CGPA | 8.5+ (Till Sem 6) |
What kind of contributor am I? I ship root-cause fixes with regression tests to production OSS โ not typo patches. Every contribution below was diagnosed from source, verified against the real runtime, and independently reviewed by an AI code reviewer before a human looked at it.
|
Anchoring a A CSS Root cause โ |
Finding high-signal bugs that maintainers accept:
|
| Open PRs | 14 across 11 repositories |
| Merged upstream PRs | 3 (Sequelize, Temporal TypeScript SDK, The Last Signal) |
| Combined stars of targeted repos | ~820,000 |
| Stars on the largest target | 186k (Ollama) |
| Repository | Contribution | Stars |
|---|---|---|
| Ollama | Fix media ordering in embeddings for multimodal models | 186k โญ |
| Axios | Cancel the response-stream capability-probe body | 109k โญ |
| Axios | Prevent RangeError when a form field is named length |
109k โญ |
| Axios | Reject a nullish url for dispatched requests |
109k โญ |
| Deno | Reject non-object iterator results in URLSearchParams |
108k โญ |
| TypeScript | Improve the error message for JSX in non-module files | 111k โญ |
| vLLM | Reclaim encoder compute budget after multimodal pruning | 96k โญ |
| Bun | Match Node.js ToIntegerOrInfinity in crypto.randomInt |
96k โญ |
| Karakeep | Anchor the highlight popover to the selection in the preview modal | 30k โญ |
| Docker Compose | Extract an IsPureResourceProvider helper |
38k โญ |
| Cua | Persistent connection pooling for VzApi |
31k โญ |
| Moleculer | Per-action and per-service validator overrides | 6k โญ |
| KafkaJS | deleteConsumerGroupOffsets admin API |
4k โญ |
All contributions use signed-off commits and a linear (rebase) history to satisfy DCO checks.
A passing unit test tells you very little. For UI and positioning bugs I build a real-browser harness that exercises the actual production code path:
// Legacy behaviour: the anchor is displaced by exactly the dialog origin
[ok] legacy: the anchor is displaced by exactly the dialog origin
[ok] legacy: the REAL Radix popover covers the text selection (the reported bug)
[ok] fixed: the anchor lands exactly on the selection centre
[ok] fixed: the REAL Radix popover no longer covers the text selectionThe legacy branch is asserted as a bug โ so the test proves the bug existed, not just that the new code happens to be self-consistent.
I score targets on four axes before writing any code:
| Signal | Why it matters |
|---|---|
| Reproducible bug reports | A confirmed bug is already agreed-upon work โ no design debate |
| Merges external PRs | Maintainers who actually review outside contributions |
| An AI code reviewer is wired in | My PR gets a structured first review before a human sees it |
A public CONTRIBUTING.md with real rules |
The repo wants contributions and states the bar |
- Read
CONTRIBUTING.mdand the repo'sAGENTS.md - Searched for duplicate issues and duplicate PRs
- Root-caused it from source, not from the issue text
- Failing regression test written first
- Minimal diff โ no drive-by refactors, no new dependencies
-
typecheck/lint/format/testall green -
pnpm install --frozen-lockfilestill succeeds - Verified in the real runtime, not just the test harness
- PR description explains the root cause, not just the diff
- LLM-use disclosure included, as the repo's template requires


