juanjo is cutting Mike's cord to the cloud

A careful, fully-planned rebuild so Mike runs end-to-end on your own hardware, with no outside accounts required.

infrastructuresecurity

Most forks bolt on features. juanjo went the other way and pulled out a dependency: Supabase, the hosted service Mike leaned on for both its database and its user logins. In its place, everything now runs locally - the database, the sign-in system, and the document storage all spin up on a developer's own machine in one step, no third-party cloud sign-ups needed to get started.

What stands out is the discipline. Before touching the code, juanjo wrote out the whole plan in detail: what changes, what stays, what's deliberately left for later, and an honest note about which parts are broken mid-switch. One route was migrated end-to-end first as a test before the other sixty-odd were touched. The result is a Mike a firm could, in principle, run entirely on infrastructure it controls.

So what Worth a look for any legal team that wants its AI tooling running in-house rather than on someone else's cloud.

View this fork on GitHub →

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

Commits in this thread

3 commits from juanjo/mike, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
82854596 Add spec: replace Supabase with local Postgres + Auth.js + Drizzle Juan Vidal 2026-05-08 ↗ GitHub
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
bd2b9451 Add Plan 1: local-Postgres foundation (Postgres + Drizzle + Auth.js + vertical slice) Juan Vidal 2026-05-08 ↗ GitHub
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2aecb8dd Add Plan 2: mechanical migration of remaining Supabase call sites Juan Vidal 2026-05-08 ↗ GitHub
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

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-180.md from inside the repo you want the changes in.

⬇ Download capture-thread-180.md