From 6d7483db32c4d856479e3d2a3cae7453e8119de4 Mon Sep 17 00:00:00 2001 From: Nikolas Burk Date: Wed, 10 Sep 2025 16:55:00 +0200 Subject: [PATCH] update import docs for prisma-client generator --- .../10-overview/03-generators.mdx | 26 ++++++++++++++----- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/content/200-orm/100-prisma-schema/10-overview/03-generators.mdx b/content/200-orm/100-prisma-schema/10-overview/03-generators.mdx index 70e2e65fc9..c6f7214357 100644 --- a/content/200-orm/100-prisma-schema/10-overview/03-generators.mdx +++ b/content/200-orm/100-prisma-schema/10-overview/03-generators.mdx @@ -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" } ``` @@ -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(); ``` @@ -181,7 +181,7 @@ 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 @@ -189,9 +189,19 @@ import { UserModel, PostModel } from "./generated/prisma/models.js"; 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`. @@ -203,6 +213,7 @@ generator client { output = "../src/generated/prisma" // Optional + engineType = "client" runtime = "nodejs" moduleFormat = "esm" generatedFileExtension = "ts" @@ -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