Docs / Stack Guides

Open documentation actions

Database and ORM Pairing

Which ORM pairs with each database in Better Fullstack, plus provider and auth-adapter notes.

The --database and --orm flags are chosen together. Not every ORM supports every engine, and a few ORMs affect which auth providers you can use. Treat the table below as guidance and the Compatibility Matrix as authoritative.

Databases

--database accepts sqlite, postgres, mysql, mongodb, edgedb, redis, or none. Relational engines cover most apps; mongodb is document-based; redis is key-value.

ORM support by engine

ORMSQLitePostgresMySQLMongoDB
drizzleYesYesYesNo
prismaYesYesYesYes
kyselyYesYesYesNo
mikroormYesYesYesNo
typeormYesYesYesNo
sequelizeYesYesYesNo
mongooseNoNoNoYes

MongoDB pairs with prisma or mongoose. The relational ORMs pair with sqlite, postgres, and mysql.

Auth adapter caveats

Some ORMs lack a Better Auth adapter:

  • typeorm + better-auth is unsupported — use --auth none or a different ORM.
  • sequelize + better-auth is unsupported — use --auth none or a different ORM.

drizzle, prisma, kysely, and mikroorm all work with Better Auth. See the Auth Providers guide for the full picture.

Hosted provider setup

--db-setup layers provider configuration onto your database choice — Turso, Neon, Prisma Postgres, PlanetScale, MongoDB Atlas, Supabase, Upstash, Cloudflare D1, or Docker. Follow the Database Provisioning guide to create and connect each one.

Next steps

Patreon