NavpreetSSidhu is wrestling Mike onto Vercel

Six commits to get the whole fork running on a mainstream hosting platform - most of them spent fighting the platform's own build tooling.

infrastructure

NavpreetSSidhu set out to get this fork - front-end and back-end together - deployable on Vercel, a popular hosting service that turns a code repository into a live app with minimal setup. The bulk of the work wasn't the app itself; it was Vercel's build process repeatedly dropping files the app actually needed to run, and then crashing on startup for the same reason.

The eventual fix is pragmatic but blunt: the AI library the fork relies on was pre-packaged into a single bundled file the build process couldn't mishandle. It works, but it freezes that library at one version, so future updates mean someone has to redo the bundling step by hand.

So what Worth a glance for anyone weighing whether this fork is a deployable product or still a code experiment - and a heads-up on the maintenance trade-off baked into how it ships.

View this fork on GitHub →

Spotted something wrong? Or know the PR text has fresher detail than the writeup above?

Commits in this thread

6 commits from NavpreetSSidhu/mike, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
df072b0b Add Vercel configuration for monorepo deployment Navpreet Sidhu 2026-05-15 ↗ GitHub
Configure Vercel to deploy both frontend (Next.js) and backend (Node.js/Express) from a single repository. Frontend serves at / and backend at /_/backend.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
3ab790a4 Lazily initialize Supabase browser client Navpreet Sidhu 2026-05-15 ↗ GitHub
commit body
Creating the client at module load crashed Next.js prerendering on
Vercel when NEXT_PUBLIC_SUPABASE_URL wasn't inlined yet. A lazy proxy
defers client creation to first use (runtime) without changing the
public `supabase` export API.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
0196243a Bundle backend with esbuild for serverless deployment Navpreet Sidhu 2026-05-15 ↗ GitHub
commit body
Vercel's file tracer copied the .mjs variant of @google/genai and
missed the .cjs that the tsc-compiled CommonJS require() needs,
crashing every request. Bundling all deps into a single dist/index.js
removes runtime node_modules resolution entirely and also covers the
lazy dynamic imports (pdfjs-dist, mammoth) that would fail the same way.

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
610a398c Export Express app as default for Vercel Node backend bundling Navpreet Sidhu 2026-05-15 ↗ GitHub
5b4fbd50 Force-include nft-mistraced deps (@google/genai, pdfjs-dist, mammoth) in Vercel Lambda Navpreet Sidhu 2026-05-15 ↗ GitHub
142ba7db Vendor pre-bundled @google/genai to bypass Vercel nft conditional-exports bug Navpreet Sidhu 2026-05-15 ↗ GitHub

Capture this thread into my fork

Download a single Markdown prompt that tells Claude how to port every commit above into your working tree — adapting paths and structure to match your repo. Run it via claude -p < capture-thread-430.md from inside the repo you want the changes in.

⬇ Download capture-thread-430.md