Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 19 additions & 7 deletions content/200-orm/100-prisma-schema/10-overview/03-generators.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ A Prisma schema can have one or more generators, represented by the [`generator`

```prisma
generator client {
provider = "prisma-client-js"
output = "./generated/prisma-client-js"
provider = "prisma-client"
output = "../generated/prisma"
}
```

Expand Down Expand Up @@ -169,7 +169,7 @@ In the future, you can safely include the generated directory in version control
After generating the Prisma Client, import it from the path you specified:

```ts file=src/index.ts
import { PrismaClient } from "./generated/prisma/client.js";
import { PrismaClient } from "./generated/prisma/client";

const prisma = new PrismaClient();
```
Expand All @@ -181,17 +181,27 @@ Prisma Client is now ready to use in your project.
If you're importing types generated for your models, you can do so as follows:

```ts file=src/index.ts
import { UserModel, PostModel } from "./generated/prisma/models.js";
import { UserModel, PostModel } from "./generated/prisma/models";
```

#### Importing generated enum types

If you're importing types generated for your enums, you can do so as follows:

```ts file=src/index.ts
import { Role } from "./generated/prisma/enums.js";
import { Role, User } from "./generated/prisma/enums";
```

### Importing in browser environments

If you need to access generated types in your frontend code, you can import them as follows:

```ts file=src/index.ts
import { Role } from "./generated/prisma/browser";
```

Note that `./generated/prisma/browser` does not expose a `PrismaClient`.

### Field reference

Use the following options in the `generator client { ... }` block. Only `output` is required. The other fields have defaults or are inferred from your environment and `tsconfig.json`.
Expand All @@ -203,6 +213,7 @@ generator client {
output = "../src/generated/prisma"

// Optional
engineType = "client"
runtime = "nodejs"
moduleFormat = "esm"
generatedFileExtension = "ts"
Expand Down Expand Up @@ -247,13 +258,14 @@ generated/
```
generated/
└── prisma
├── browser.ts
├── client.ts
├── commonInputTypes.ts
├── enums.ts
├── internal
│ ├── class.ts
── prismaNamespace.ts
── libquery_engine-darwin.dylib.node
── prismaNamespace.ts
│ └── prismaNamespaceBrowser.ts
├── models
│ ├── Post.ts
│ └── User.ts
Expand Down
Loading