I'm Yati Bhardwaj — a self-taught developer who arrived at code from the other side of the microscope. I build AI products, automation and web apps that run unattended — social media autopilots, a WhatsApp co-pilot, a browser video editor, clinical imaging tools — ten of them designed, written and deployed solo, from the first model call to the launcher script. My free lab tools live at masstree.in — a QC calculator with Westgard rules, a buffer dilution calculator, and BioLinguist, a microbiology assistant.
name: Yati Bhardwaj
role: software developer · AI, automation & web products 💻
origin: the lab bench — microbiology, QC, clinical workflows 🔬
focus: Clinical AI · Autonomous content systems · Browser-native creative tools
approach: ship end-to-end — model, backend, UI, deploy, and the launcher script
open_to: remote and part-time work 🌍
debugger: a second cup of coffee ☕
fuel_ratio: 60% caffeine · 30% curiosity · 10% pure stubbornness
site: https://masstree.inI started out at a lab bench — running samples, reading plates, staring at the same clunky software every shift and thinking "I could fix that." Eventually I stopped thinking it and started writing it.
That gave me an unusual overlap: I know what a lab and a clinic actually need, and I can build it myself. So I do — DICOM workstations, EEG screening workbenches, and AI engines that run entire social channels unattended. No team, no bootcamp, no CS degree: every project below was designed, built and deployed solo, mostly after hours, entirely on caffeine.
Ten projects · three domains · all shipped solo — diagram generated by assets/make_map.py, which I also wrote
One workstation for every scan. A clinician shouldn't need one tool for a CT, another for a fundus photograph and a third for a scanned report.
Aura opens a bare study file with no extension, a multi-frame series, a ZIP containing an entire examination across several folders, or an everyday PNG — all in the same browser viewer, with the same tools. It has no database and no storage: a study is decoded locally, worked on, and gone when the tab closes. Nothing is uploaded to be kept, because there is nowhere to keep it.
- 🗂️ Hand it a ZIP of a whole examination and it sorts the contents into series, in the right order, with thumbnails and a progress bar
- 🎚️ Viewing presets — soft tissue, angio, lung, bone, brain — applied on open, so a study never arrives washed out
- 📐 Full measurement kit — length, angle, rectangle & ellipse ROIs, point probes, freehand outlines — collected into a list that flows straight into the report
- 🧠 AI analysis runs across every series, not just the slice you happen to be looking at — and says so plainly when no model is connected rather than inventing a finding
- 📄 Editable structured report with embedded key image and series table → polished document or PDF; cine scrubbing and animated-GIF export for presentations
- ⌨️ Reads like a real workstation: corner patient/institution details, orientation letters, live tissue values under the cursor, shortcuts for every tool
Next.js TypeScript Cornerstone.js MedGemma · source public · MIT · ⚕️ research prototype — not a medical device
An EEG you can't scrub is an EEG you can't read.
An end-to-end screening workbench: drop in a standard recording and it opens the montage as an interactive multi-channel trace, measures the rhythms clinicians actually look at, runs an epileptiform screening pass — then turns all of it into something readable instead of a wall of numbers. Plenty of tools will hand you a spectrum; very few will explain what they saw.
- 📈 Pan across the recording, zoom into a suspicious second, isolate a single channel, inspect any window
- 🌊 Per-channel breakdown across the classical frequency bands — the quantities a reader would reach for, made explicit
- 🎯 Automated epileptiform check, deliberately framed as a prompt to look closer, never a diagnosis
- 🧾 Plain-language narrative report grounded in the numbers actually extracted, exported as a properly typeset PDF with every channel label rendering correctly
- 🔑 Self-hosted with your own credentials and a one-click launcher — recordings don't go to anyone else's product
FastAPI React MNE Plotly · ⚕️ research & educational tool
🚀 InstaPilot AI — a whole content team for Instagram + YouTube
One AI brain. Two platforms. Zero daily effort.
Running a serious Instagram and YouTube presence is two full-time jobs — ideate, write, design, render, schedule, cross-post, then answer every comment and DM, forever. InstaPilot collapses all of it into one self-hosted app running on accounts that are entirely yours.
- 🪄 AI Setup — describe your brand in one sentence; it asks whatever it still needs, then generates the entire configuration (niche, persona, handles, labels, topics, schedule) for you to review and apply
- 🎬 Invents topics that don't repeat, writes hook/body/CTA/hashtags, designs branded cards and carousels, builds 15–60s vertical Shorts with mood-matched music
- 🎙️ Optional AI voiceover synced per card over auto-ducked music, with captions that auto-translate into each viewer's language — or burn in word-by-word
- 🔁 Turns a Short into an Instagram Reel automatically, on its own deferred schedule
- 💬 Replies to comments and DMs — including voice notes, listened to and answered aloud — and is smart enough never to reply to itself
- 🛡️ Won't publish twice, won't talk over itself, recovers on its own after an interruption; every model has backups so one bad day upstream never costs a day of posting
Next.js TypeScript Prisma Graph API n8n ffmpeg · 🎨 white-label · 🏢 multi-brand · 🔑 self-hosted
▶️ YouTubePilot AI — a faceless worker that runs a Shorts channel
Idea → script → video → upload → engage. Fully unattended.
One app replacing your writer, designer, video editor and community manager. It runs the daily grind on a schedule you set, in a niche and voice you choose, on a channel that's 100% yours.
- 🎬 Real videos, not slideshows — a curiosity hook cover → large-text content slides → subscribe outro, one cohesive colour theme per Short, length selectable 15–60s
- 🏷️ Writes the rich description, generates search tags and a custom thumbnail, then seeds an engagement-bait first comment on upload
- 🎙️ Six AI voices, narration synced to each card over ducked music, auto-translated or TikTok-style word-by-word captions
- 🧪 When your topic list runs dry it generates fresh same-style ideas, with quality-gated titles and no rerunning yesterday's subject
- 🏢 Many channels from one dashboard, each with its own brand, schedule and topics — plus 10 dashboard themes and full re-skinning from the Settings UI
- 📊 Syncs analytics and emails you a daily health digest
Next.js TypeScript Prisma FFmpeg TTS · 🎨 white-label · 📲 installable · 🔑 your keys, your channel
The engine that started as a single-account tool and grew into a multi-brand platform.
Each brand is a paired Instagram + YouTube account running the full pipeline independently — own configuration, prompts, topics, schedule and accounts. A human mostly just watches the dashboard.
- 📚 Many formats, one voice — educational posts, clinical pearls, prevention tips, quizzes where the answer never leaks in-feed, myth-vs-fact, case studies, carousels and Stories
- 🧠 Topics are tracked and rotated so the generator avoids repeating the subject of recent posts, not merely the wording
- 📅 Per-weekday scheduling for both platforms, each day with its own post count and times, timezone-aware
- 🌐 Replies come back in whatever language the sender used — English, Hindi in Devanagari, or romanised Hinglish — phrased natively rather than translated
- 🛡️ Inbound messages are treated as untrusted, so instructions hidden in a DM can't hijack a reply; the bot never diagnoses and always defers to the person's own clinician
- 📊 A Morning Digest you choose the sections of, with numbers pulled live at send time — and health reporting that reflects what's actually happening, not merely whether an API key exists
Next.js Prisma Postgres Grok Gemini ffmpeg Railway · 🎨 ten-theme design system · 📲 installable dashboard
✂️ ReelStudio — a real video editor that never uploads your footage
A full VN-style editor running entirely in the browser. No installs, no uploads, 100% client-side.
- 🧱 Multi-track timeline with drag across tracks, trim, split, duplicate, snapping and zoom — plus a live canvas preview with on-stage drag / scale / rotate handles
- 🎞️ Keyframes for position, scale, rotation and opacity; 0.1×–4× speed ramping; 8 transitions (fade, dissolve, slide, wipe, zoom, blur, glitch, whip)
- 🎨 10 filter presets plus brightness, contrast, saturation, exposure, temperature, tint, highlights, shadows, blur, vignette, grain and hue
- 🟢 Chroma key with similarity, smoothness and spill controls; picture-in-picture overlays with blend modes; text/image watermarks with 9 positions and tiling, burned into exports
- 🎙️ Record a voiceover straight from your mic onto the timeline, extract a clip's audio into its own track, mix per-clip volume and fades in real time
- ⬇️ In-browser export up to 4K — MP4 / WebM with mixed audio (GIF via FFmpeg.wasm), 360p→2160p with resolution-aware bitrate
Next.js 14 React 18 TypeScript Zustand Canvas FFmpeg.wasm · source public
💬 WhatsApp AutoPilot — a co-pilot that texts like you
The point isn't "an AI answers your WhatsApp." The point is that the replies read like you wrote them.
Auto-reply is off by default and opt-in per contact — a master switch plus a per-chat toggle — so it never speaks for you to someone you didn't authorise.
- 🧬 Studies how you actually text this particular person — your rhythm, slang, sentence length, Hinglish — into a lasting per-contact style profile. No assistant-speak, ever
- 🧠 A one-time deep read of your history captures the relationship, recurring facts and running plans, so replies arrive with context
- 🔔 Flags the messages that genuinely need you — plans, money, confirmations, "are you okay" — and can hold them back from auto-sending. A hard rule stops it committing to times or meetings on your behalf
- 🎙️ Voice notes both ways: incoming ones transcribed, replies sent as a real WhatsApp voice note. It reads images, PDFs and shared links too
- 💤 Waits out a rapid volley of five messages and sends one considered reply — and catches a near-duplicate of its own last replies before it can go out
- 💡 An
@botside-channel: a correction gets phrased properly and sent for you; a question gets answered privately inline, visible to nobody else - 🔒 Access-key locked (no key = no data at all), write-only secrets, and OTPs / bank alerts recognised, never stored, never answered
Next.js Socket.IO whatsapp-web.js Groq Gemini vision · 🗣️ Hinglish-native · 📲 installable
🎙️ Aria — an AI-to-AI podcast hosted by 3D robots
Pick a topic. Two robots take the mic. Neither of them knew what they were going to say.
Type "why pineapple belongs on pizza" and an episode is written from nothing — cast invented to fit the subject, roughly two dozen lines — then voiced line by line and streamed to your browser, where two robot hosts perform it. From a blank field to two robots arguing: about a minute.
- 🗣️ Distinct voices per host, subtitles colour-coded to whoever's talking, and a level meter that moves with the audio
- 🤖 A wizard for your own host — name, personality, voice — ending in a live 3D twin of the robot you just built
- 🎓 English practice mode: a coach, a learner and a guide. The learner slips up, the coach corrects and explains, the guide offers a more natural phrasing, the learner tries again
- 🎨 Fifteen themes with ambient atmosphere — drifting petals, floating embers, slow stars — that quietens itself under reduce-motion
- 🔁 If one engine is unavailable or rate-limited the next picks it up mid-episode. You hear a podcast, not an error message
three.js FastAPI LiveKit Modal multi-engine TTS · source public · MIT
🐇 Grabbit — paste a link, get the file
Every download site on the open web is a minefield of pop-ups, fake buttons and mystery redirects. This is the version you'd actually want: one page, one field, one file.
- 🏷️ Your download is named after the video — spaces, accents and all — not
video_dQw4w9WgXcQ.mp4 - 🔗 Queue as many links as you like; each saves as its own file with a live "downloading 3 of 7" counter — no archive to unzip
- 🍏 Delivered in a format Apple devices can actually open: compatibility wins over a bigger resolution number
- 🎧 Rip audio on its own at 320 kbps MP3, or keep the original track untouched
- 🤖 Works through alternative routes automatically when a video is awkward — and fails fast in a couple of seconds on a private, deleted or over-long one
- 🔒 Full-screen access-key lock (change the key and every device signs out instantly), installable to your home screen, and engineered to fit a 512 MB free tier
Flask yt-dlp ffmpeg Railway · deployed, live, and used daily
| Project | What it is | |
|---|---|---|
| 🌿 | masstree.in | My portfolio and a microbiology toolkit — plus two AI chatbots: BioLinguist, which explains microbiology properly, and RoastBot, which does not. Static HTML + PHP, prompts kept server-side. |
| 🎉 | Project Birthday | A five-screen interactive birthday site built as a gift — animated transitions, particle effects and a little narrative. Proof that not everything has to be a SaaS. |
| 🧪 | Kaggle — Qwen3-8B dual RAG | One 8B GGUF model serving two retrieval-augmented personas from the same weights: a cath-lab clinical assistant and a casual chat persona. |
Every project above in one plain list — no images, no badges, just links.
- aura-clinical-viewer — browser DICOM workstation with AI analysis
- instapilot-ai — autonomous Instagram + YouTube Shorts content manager
- youtubepilot-ai — faceless worker running a YouTube Shorts channel
- whatsapp-autopilot — WhatsApp co-pilot that replies in your own voice
- aria — AI-to-AI podcast hosted by 3D robots
- reelstudio — VN-style video editor running entirely in the browser
- eeg-epilepsy-analyzer-showcase — EDF screening workbench for EEG
- grabbit-downloader-showcase — self-hosted Reels and YouTube downloader
- Project-birthday — animated five-screen birthday microsite
- ys941 — this profile README
Built by Yati Bhardwaj · masstree.in · New Delhi, India
Deepening the clinical side — better study handling in Aura, a sharper screening pass in the EEG Analyzer — while the autopilots keep posting on their own.
A self-taught developer with a lab scientist's eye for what people actually need. Open to remote and part-time work across AI products, automation and web development — healthcare included, but far from only — and always happy to talk shop (or coffee) about anything above.
"Isolate the problem. Culture a fix. Ship the cure."
— still the same job, just a different bench ☕