Modern tools for working with databases

Unlock a new level of developer experience with intuitive data model, automated migrations, type-safe ORM and more.

Type-safe database client

The auto-generated client provides you with linting, auto-completion and a clean API for building your queries.
const publishedPosts await prisma.post.findMany({
  where{
    publishedtrue,
  },
  select{
    titletrue,
    publishedtrue,|
    author{
      select{
        idtrue,
        emailtrue,
      }
    }
  }
});

Simple, flexible data modeling

Declare your database structure in a human-readable way or introspect them automatically from your existing database.
model User {
  id     Int     @id @default(autoincrement())
  email  String  @unique
  role   Role    @default(USER)
  posts  Post[]
}
 
model Post {
  id         Int       @id @default(autoincrement())
  title      String    @db.VarChar(255)
  published  Boolean   @default(false)
  createdAt  DateTime  @default(now())
  author     User?     @relation(fields[authorId], references[id])
  authorId   Int
}
 
enum Role {
  USER 
  ADMIN 
}

Auto-generated database migrations

Prisma Migrate automatically generates fully customizable SQL migration files based on changes in Prisma schema.

Visual built-in database browser

Understand your database by easily browsing across tables, filtering by fields, traversing relations and more.

Extra ergonomy in VS Code

Auto-completion, linting, formatting and more help Prisma developers in VSCode stay confident and productive.
Download extension

Example Prisma implementations

Github repository full of ready-to-run example projects demonstrating various use cases of Prisma.
View on Github

Active and growing community

Join a 100k+ strong community to learn, share and receive support on how to build scalable applications with Prisma.
Join the community
28k+ stars on Github
250k+ active developers
In production world-wide

Trusted in production by

GatsbyRaphaGroverPoppyPantherSouth PoleOutrider