Draw my repo

SeeRepo with Supabase

Supabase isn't a framework: it's where your data and your sign-in live. SeeRepo reads it inside whatever framework your app uses, most often Next.js.

What SeeRepo reads

  • Your tables, from the create table statements in your supabase/migrations/*.sql files. Each one is a data model on your map.
  • Who reads and writes them, from your code's .from('table').select(), .insert(), .update(), .upsert() and .delete() calls. That's how a cable gets drawn from a part of your product to its data, with the verb reads or writes to.
  • Supabase as a service, from the packages you import (@supabase/supabase-js, @supabase/ssr), your environment variables and its URLs. It shows on the right of your map with its logo.

An example from our test bank

vercel/nextjs-subscription-payments, read at a fixed commit:

  • 5 tables from supabase/migrations/20230530034630_init.sql: customers, prices, products, subscriptions and users
  • Supabase found in 8 files, with its proof in components/ui/AuthForms/OauthSignIn.tsx

Saasfy/saasfy, a Next.js monorepo on Supabase, shows 26 screens, 28 actions and 4 API doors, with Supabase, Stripe and Resend as its services.

Good to know

  • Keep your migrations in the repo. The tables come from them: if your schema only lives in the Supabase dashboard, SeeRepo still sees your .from('…') calls, but can't list your tables with their file.