Projects.

Grouped by what each one is. Shipped products and my own systems come first, then a hackathon build, experiments, a tool I built for myself, and the guided builds I did while learning.

Production & Systems Work

Production & systems work

Shipped products and systems I designed myself. This is the work I'd put my name on.

Be Educated homepage: IIT-JEE & NEET Foundation Institute
Full-stackJun 2025 – Present
Be Educated

The full platform for a JEE/NEET coaching institute: enrollment, fee payments, exams, and dashboards for five roles. I built it solo as a freelance project.

React 19TypeScriptExpressSupabase (Postgres)ClerkCashfreeTailwind CSSResend
LightDep architecture: visual and audio transformer streams fused late for classification
ML Research2026
LightDep

My research at IIT BHU: a 3.96 MB model that screens for depression from face and voice features right on the device. The paper got accepted at IEEE ANTS 2026.

PyTorchONNX Runtime (+ Web)MediaPipeOpenFaceDockerSciPyscikit-learn
Terminal: health checks and enqueue requests against the producer
Distributed SystemsMar 2026
ConquerManage

A small job queue. An Express producer pushes tasks into Redis, and a pool of workers picks them up, retries failures, and dead-letters the ones that keep failing.

TypeScriptNode.jsExpressRedisioredisDocker Compose
POST /lock/contested-resource · 5 requests at onceserver-1200 · acquiredserver-2409 · heldserver-3409 · heldserver-4409 · heldserver-5409 · heldREDIS · single-threadedlock:contested-resourceSET … NX PX 30000owner = server-1release / extend → Lua: if GET == owner then DEL / PEXPIRE
Distributed SystemsMar 2026
LockForge

A distributed lock service over HTTP. When several servers try to touch the same resource, exactly one gets the lock.

TypeScriptNode.jsExpress 5RedisioredisLuaDocker
rate:<api-key or ip> · sorted set, score = Date.now()window_secondsnowZREMRANGEBYSCORE0 … now − windowZADDZCARDcount < max_requests→ 200 · X-RateLimit-Remainingotherwise→ 429 · Retry-After (oldest entry + window − now)
Backend / SystemsMar 2026
Limitron

A rate limiter written as Express middleware. It uses a sliding-window log in Redis and sets per-API-key limits by tier.

TypeScriptNode.jsExpressRedisioredisDocker
one Postgres · no LangChain · every stage measurableQUERYs. 439 CrPC?pgvector · cosineHNSW · MiniLM-L6tsvector · ts_rank_cdexact section numbersRRFk = 60cross-encoderrerank → top 5LLM → answercites [Source N]ingest: PDF → section-aware chunks (160 words) → embed → pgvector
GenAIApr 2026
VidhiVault

Ask questions about Indian legal documents and get answers with citations. Retrieval is hybrid (vector + keyword) with reranking, built from scratch without LangChain.

FastAPIPostgreSQL + pgvectorsentence-transformersCross-encoder rerankerCelery + RedisPyMuPDFpdfplumberAlembic
Hackathon

Hackathon build

Built in four days with a team of three, for HCL's hackathon. I was the team captain.

Waypoint landing page: every course is a station, learning is the line between
AI · Full-stackAug 2026
HCL hackathon · Round 2 · team of 3
Waypoint

A learning-path recommender that plans over a skill graph instead of searching course text. It never puts a course in front of you before you're ready for it.

Next.jsTypeScriptPostgres + pgvectorDrizzleCohere embeddings + rerankZodVitest
Experiments

Experiments

Smaller things I built to learn something or try an idea.

Data / Viz
WhatsApp Chat Analysis

Upload a WhatsApp export and get stats, timelines, sentiment, topics and toxicity. It handles Hinglish chats too.

PythonStreamlitpandasscikit-learnTransformersgensimNetworkXPyVis
GenAI
Token Analyzer

A small Streamlit tool that counts tokens and estimates the cost of a prompt across 8 LLMs from OpenAI, Google and Anthropic.

PythonStreamlittiktoken
A Tool I Built for Myself

A tool I built for myself

Built to scratch my own itch. A personal-use tool, not a product.

GenAI
TwitX

A drafting helper for tech posts. Twice a day it pulls what's trending on Reddit, Hacker News and GitHub, writes drafts in the user's own style, and sends them on Telegram for review. It never posts by itself.

Next.jsTypeScriptExpressPostgreSQLPrismaGroqClerkTelegram Bot APIGitHub Actions
Guided Builds (Learning)

Guided builds

Projects I built by following tutorials to learn new stacks. They're here for completeness. My own work is above.

Full-stackGuided build
DevX AI

An AI SaaS with six tools (article writer, blog titles, image generation, background/object removal, resume review), with Clerk auth and a free-tier limit.

React 19Express 5Neon PostgresGeminiCloudinaryClipDropClerkZod
Full-stackGuided build
DentCare

A dental clinic app with appointment booking, email confirmations, an admin dashboard and a voice AI assistant.

Next.jsTypeScriptPostgreSQLPrismaClerkVapiResendTanStack Query
Full-stackGuided build
SellWell

A multi-vendor store. Sellers apply to open a shop, and buyers check out with Stripe or cash on delivery.

Next.jsPostgreSQLPrismaClerkStripeInngestImageKitRedux Toolkit

Resume

Want my resume?

I share it on request, so you always get the latest version. Drop me an email with a line about the role or why you're asking, and I'll send it over.

devanshpandeyji4321@gmail.com
Write the email →