Read the story, then drive the real product.
Kart is one public page that shelves finished demos as cards. Pick an app, sign in with your email, and a one-time PIN lets you into the live application — not a mockup, not a video of someone else clicking. Every app keeps its own email login, so a single shared link is safe: only the inbox holder gets in.
A demo is usually slideware — or a naked URL.
When you want to show someone a working product, you get two bad choices: a deck that proves nothing, or a raw link with no story, no context, and often no access control. Shipping several demos makes it worse — every one needs its own login, its own subdomain, its own plumbing.
1Slideware convinces no one
Screenshots and bullet points can't be driven. A prospect can't tell a finished product from a prototype that only works in the screenshots.
2A raw URL is unsafe and unexplained
Send a bare app link and you've either left it wide open, or bolted on a login you now maintain per app — with no page telling anyone what they're looking at.
Kart's answer: let people read the story, then try the real thing. Trust comes from a working demo plus honest documentation — never from slideware.
One shelf. Many finished apps. One login per app.
Kart is a public umbrella hub — browse it freely, no gate. Each app on the shelf is a real, deployed product with its own email→PIN door. Access is per app, not per shelf: entering Setu doesn't unlock LensLab. That's why one Kart link is safe to hand to anyone — the shelf is open, but the apps stay yours.
Your email
Enter your address on the app's own gate. No password, no account to create.
A one-time PIN
A fresh 6-digit PIN arrives by email through Resend — single-use and short-lived.
You're in
Type the PIN and the live app opens. Close the tab and the session ends.
The clever part isn't any single gate — it's that one shared betadoc engine gives every app on the shelf the same email→PIN door with zero per-app auth code. Add an app, point its card at its subdomain, and it inherits the login for free.
Two clean surfaces, one keyless engine behind them.
A visitor only ever sees tidy *.smritiraj.online subdomains. Behind them,
a single reverse proxy fans many demos through one tunnel port, and a shared gate mints the PINs.
Two rules keep it safe as it grows: the default, no-prefix tunnel route always points at the incumbent demo, so adding an app can never break an existing one — and multiplexing is done by path prefix, never host header, because static-host proxies rewrite forwarded-host headers.
What's actually built — honestly.
A matrix that shows everything green is a matrix nobody believes. Here's what's live, what's partial, and what's still on the roadmap.
| Capability | Status |
|---|---|
Public umbrella hub (the shelf) One page, app cards, ungated — app-kart.smritiraj.online |
Live |
Editorial betadoc site (this page) Story + architecture + matrix at kart.smritiraj.online |
Live |
Shared email → PIN gate One betadoc engine serves every app's door, zero per-app auth code |
Built |
Emailed PIN delivery via Resend Real emails when RESEND_API_KEY is set; on-screen fallback until send.smritiraj.online is verified |
Partial |
Reverse-proxy path-prefix multiplex Many demos through one tunnel port; default route pinned to the incumbent |
Built |
Setu — real-time voice translation EN + 5 Indian languages, ~1.5s a turn; 8 features live |
Live |
FridgeAI — photo → recipes Vision detection + recipe ranking live; cook mode + chat on roadmap |
Live |
LensLab — local image search On-device CLIP, zero egress; reverse-proxy ownership (takeover.sh) still pending |
Private beta |
Narrated demo video in the hero Captured in-app motion + voiceover; the hero has a slot reserved for it |
Roadmap |
What's next on the shelf.
- 1
Verify
send.smritiraj.onlinein ResendFlip every app from on-screen PINs to real emailed PINs from an
@smritiraj.onlineaddress — one env var, no code change. - 2
Record the narrated walkthrough
Headless-browser capture of real in-app motion, voiceover, ffmpeg assembly — embedded in the hero where the still frame sits today.
- 3
Finish LensLab's reverse-proxy ownership
Run
takeover.shso LensLab serves from its own clean subdomain instead of the raw Vercel URL. - 4
Grow the shelf
Every new demo inherits the shared gate and the path-prefix multiplex — adding one is a card plus a proxy block.
Two surfaces, deployed the boring, reliable way.
Each surface is its own explicitly-named Vercel project on a clean subdomain — never auto-named, never left behind default SSO. Adding a demo is additive by construction.
The betadoc site
This page. Static, self-contained, no CDN dependency, theme-aware. Fronts nothing — it just tells the story and links out to the shelf.
kart.smritiraj.online
→ single index.html, inline CSS
→ Vercel static project
The shelf + apps
The hub is public; each app sits behind the shared betadoc engine on a loopback port, reached through the reverse-proxy multiplex over one tunnel port.
app-kart.smritiraj.online
→ per-app clean subdomains
→ shared engine mints the PIN
Secrets live in gitignored env files, never in the repo. The engine holds the sending key, so the apps themselves stay keyless. Demo data is synthetic — no real customer data on a public demo.
Enough story. Go drive one.
The shelf is open. Pick an app, drop in your email, and you'll be inside the real product in under a minute.