Showcase post. Forkfolio is a multi-tenant Next.js app where a developer signs in with GitHub and gets a live portfolio at their own subdomain, no config needed.
The interesting Next.js bits:
- middleware (proxy.ts in Next 16) maps username.domain to a /[username] route with SSR
- one app, one Supabase project, no separate backend
- a sync route pulls repos, languages, and the GraphQL contribution calendar, then generates AI one-liners for projects
- a chat route does RAG with pgvector, scoped per user, and answers visitor questions about the owner's work
- nightly Vercel cron re-syncs everything and doubles as a Supabase keep-alive
It is in private testing right now and I am collecting early testers through a waitlist before launch:
Happy to go deep on the subdomain routing or the RAG scoping if anyone is curious.
Bl9 showcases Forkfolio, a multi-tenant Next.js app allowing developers to sign in with GitHub and create a live portfolio at a personal subdomain. The app uses middleware for subdomain routing, integrates with Supabase, and features a chat route with RAG using pgvector. The project is in private testing, seeking early testers.
For tenant isolation, I’d make the tenant ID part of every server-side data access path rather than relying on the page-level route alone. It’s easy for a later query to accidentally bypass the route assumption.