Projects

Backend-heavy systems, async pipelines, real-time applications, and developer tools.

Platform Engineering · Browser IDE

active

Yuvro Web IDE

A browser-based online IDE with separate metadata, orchestration, and runtime layers for isolated developer workspaces with terminals, previews, and database tooling.

Problem Solved

Developers need instant remotely hosted coding environments with file editing, interactive shells, app previews, and database inspection, but the hard part is maintaining isolated workspace state and runtime infrastructure at scale.

Architecture and Stack

Frontend in React, TypeScript, and Vite; an init service in FastAPI with PostgreSQL and S3-backed content-addressed storage; a FastAPI orchestrator on Kubernetes; and a per-workspace runtime agent exposing PTY sockets, file APIs, and port proxying.

Key Technical Decisions

  • Split the system into frontend, init service, orchestrator, and runner so identity, metadata, and execution concerns remain decoupled.
  • Used content-addressed storage with SHA-256 hashing and S3-backed blob storage to reduce duplication.
  • Modeled file explorer metadata with a normalized self-referential nodes table and indexes for fast lookups.
  • Provisioned isolated Kubernetes resources and project-specific databases per workspace.
  • Kept the runtime agent thin so shell, file I/O, and proxying happen inside the workspace boundary.

Why It Matters

This project reflects platform engineering, runtime isolation, workspace orchestration, control-plane design, browser-based developer tooling, and real-time terminal streaming.

Maps Well To

Developer platforms, cloud IDEs, internal tooling teams, and products built around managed execution environments.

ReactTypeScriptViteFastAPIPostgreSQLAWS S3KubernetesPTY streaming
CodeSM preview

Sandboxing · Async Infrastructure

active

CodeSM

A scalable sandboxed code execution engine that safely compiles and runs untrusted code across multiple languages.

Problem Solved

Executing user-submitted code safely is difficult because it can be malicious, resource-intensive, or unstable. The system needs to run code asynchronously, evaluate test cases, and return results without compromising the host system.

Architecture and Stack

React frontend with a Node.js and Express.js backend, PostgreSQL and Redis for state and coordination, BullMQ for execution jobs, and Docker on AWS EC2 for sandboxed runners.

Key Technical Decisions

  • Used Docker-based isolation for secure execution environments.
  • Applied resource limits, filesystem isolation, disabled networking, and restricted process capabilities.
  • Reused persistent containers instead of creating a fresh container per execution to reduce overhead.
  • Implemented early-exit evaluation to stop grading after the first failed test case and free worker resources faster.
  • Built an async queue-based execution pipeline with BullMQ, Redis, and PostgreSQL.
  • Supported C++, Java, Python, JavaScript, and Go.

Why It Matters

This project shows depth in security, sandboxing, job processing, performance optimization, infrastructure design, and high-throughput backend systems.

Maps Well To

Online judges, AI agents with tool execution, developer infrastructure, education products, and secure compute platforms.

ReactNode.jsExpress.jsPostgreSQLRedisBullMQDockerAWS EC2
Storix preview

Async Pipelines · Real-Time Status

active

Storix

A real-time asynchronous document ingestion and processing pipeline.

Problem Solved

Heavy PDF extraction should not block the request lifecycle or cause server timeouts, but users still need live progress visibility across the processing flow.

Architecture and Stack

Next.js and TypeScript on the frontend, FastAPI on the backend, Celery for task execution, PostgreSQL and Redis for persistence and coordination, and AWS S3 for document storage.

Key Technical Decisions

  • Chose FastAPI and Celery for structured APIs and reliable background processing.
  • Used Redis Pub/Sub and WebSockets to bridge worker-side task events to the frontend.
  • Moved document extraction fully outside the request lifecycle.
  • Designed the UX so users can track parse, extract, and save stages in real time.

Why It Matters

This project demonstrates async processing, data pipelines, background jobs, real-time status streaming, and practical architecture for document-heavy products.

Maps Well To

Document-heavy SaaS, workflow automation tools, ingestion systems, and applied AI pipelines.

Next.jsTypeScriptFastAPICeleryPostgreSQLRedisAWS S3WebSockets
Chatterly preview

Real-Time Systems · Event-Driven Messaging

active

Chatterly

A scalable real-time chat architecture built for high-throughput messaging.

Problem Solved

Directly writing chat messages to the database under high concurrency creates a bottleneck and can crash the system, so ingestion and persistence have to be decoupled.

Architecture and Stack

Next.js and TypeScript on the frontend, Node.js with Socket.io on the backend, Apache Kafka for message brokering, Redis for synchronization, and PostgreSQL with Prisma ORM for persistence.

Key Technical Decisions

  • Used Kafka to decouple message ingestion from persistence.
  • Used Redis Pub/Sub to synchronize WebSocket events across multiple server instances.
  • Designed the system around durable persistence plus fast live delivery.
  • Considered event ordering and delivery guarantees through Kafka offsets.

Why It Matters

This project shows experience with event-driven systems, streaming architecture, real-time applications, and scalable WebSocket infrastructure.

Maps Well To

Chat, collaboration, customer messaging, live support, and streaming products.

Next.jsTypeScriptNode.jsSocket.ioApache KafkaRedisPostgreSQLPrisma

Collaborative UX · State Synchronization

active

Collab-Draw

A real-time collaborative whiteboard and drawing platform.

Problem Solved

Synchronizing drawing state like paths, coordinates, and shapes across multiple clients with low latency is difficult when updates are frequent and conflicts must stay minimal.

Architecture and Stack

Next.js 14, TypeScript, Canvas API, and Tailwind CSS on the frontend; a Node.js REST API plus a separate Node.js WebSocket server on the backend; PostgreSQL with Prisma; and a Turborepo monorepo managed with pnpm.

Key Technical Decisions

  • Separated the HTTP backend and WebSocket backend so they can scale independently.
  • Used a Turborepo monorepo to share database schemas, UI pieces, and common utilities.
  • Managed normalized drawing state and live canvas synchronization.
  • Focused on efficiently broadcasting high-frequency coordinate updates.

Why It Matters

This project highlights collaborative UX, real-time synchronization, WebSocket systems, and modular backend separation.

Maps Well To

Collaborative design tools, whiteboards, multiplayer interfaces, and browser-native real-time products.

Next.jsTypeScriptCanvas APITailwind CSSNode.jsWebSocketsPostgreSQLPrisma

Distributed Systems · Consensus

active

Raft-KV

A distributed key-value store built in Go using the Raft consensus algorithm.

Problem Solved

Distributed systems need to stay consistent and available even when nodes fail or network partitions happen.

Architecture and Stack

Go implementation of a key-value store with Raft handling leader election, heartbeat coordination, replicated logs, and state machine replication.

Key Technical Decisions

  • Implemented Raft from scratch to understand leader election, heartbeat handling, distributed logs, and state machine replication.
  • Used Go concurrency primitives for replication and coordination logic.
  • Focused on correctness under non-deterministic network behavior.
  • Worked through strict consistency and fault tolerance tradeoffs.

Why It Matters

This project reflects strong systems thinking, distributed systems fundamentals, high-availability design, and interest in infrastructure internals.

Maps Well To

Infrastructure teams, databases, storage engines, control planes, and distributed systems roles.

GoDistributed systemsRaft consensusFault toleranceState machines

Peer-to-Peer Communication · WebRTC

active

WebVox

A peer-to-peer video chat application using WebRTC and Node.js signaling.

Problem Solved

Real-time video and audio communication should happen directly between browsers to reduce latency and server bandwidth usage.

Architecture and Stack

HTML, JavaScript, and EJS on the frontend, Node.js and Express.js on the backend, WebRTC for media transport, and WebSockets for signaling.

Key Technical Decisions

  • Used WebRTC to establish direct browser-to-browser media connections.
  • Built a custom signaling server for SDP offers, answers, and ICE candidate exchange.
  • Structured the application around room-based coordination.

Why It Matters

This project shows understanding of low-latency communication, peer-to-peer networking, browser media systems, and signaling infrastructure.

Maps Well To

Communication products, telepresence apps, collaboration tools, and browser media systems.

HTMLJavaScriptEJSNode.jsExpress.jsWebRTCWebSockets

Transactional Backends · RBAC

active

Courseq

A backend API for a digital course marketplace with secure transactions and role-based flows.

Problem Solved

A course marketplace must handle multi-role authorization and transaction state changes safely without race conditions or duplicate purchases.

Architecture and Stack

Node.js, Express, and TypeScript on the backend with PostgreSQL for transactional state management.

Key Technical Decisions

  • Designed clear RBAC boundaries between user, creator, and admin roles.
  • Modeled the purchase lifecycle with explicit PENDING, SUCCESS, and FAILED states.
  • Used database-level uniqueness constraints to prevent duplicate purchases.
  • Focused on transactional integrity and idempotency.

Why It Matters

This project shows backend API design, transactional logic, auth models, and e-commerce-style workflow handling.

Maps Well To

Marketplaces, SaaS billing flows, commerce products, and backend systems with transactional guarantees.

Node.jsExpress.jsTypeScriptPostgreSQLRBACTransactional integrity