Data and backend

Prisma

Schema-first TypeScript ORM with generated types.

made by
Prisma

Magic Ship is one shop in Vancouver, BC, working remotely with clients worldwide. We are not a partner, reseller, or certified vendor of Prisma - we just build with this.

What Prisma is

Prisma defines the data model in a schema file and generates a typed client and migrations from it. It supports Postgres, MySQL, SQLite, and others, and ships Studio, a browser UI for inspecting and editing rows.

How we use it

We use Prisma when the priority is a data layer new engineers can read: one schema file as the source of truth, generated types that turn a wrong field into a compile error, and migrations checked into the repo. Studio is genuinely useful in a handover session when someone wants to see the data rather than hear about it. Queries the client cannot express well are written as raw SQL.

Where it is the wrong choice

Complex SQL, and pgvector operators in particular, fall outside the query API, so those end up as raw queries that lose the type safety you adopted it for. When most of the interesting queries are that kind, Drizzle is the better pick.

Building something on Prisma?

Send the problem rather than a job spec. You get an answer on scope, on fit, and on whetherPrisma is even the right call for it.

Start a project

Prisma and Prisma are trademarks of their respective owners, used here to say what we work with.