You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add coherent in-context callouts and CTAs to two ranking ORM blog posts,
pointing readers to Prisma Next, the individual posts/series, and our
commercial products (Prisma Postgres + Prisma Compute).
- backend-prisma-typescript-orm-with-postgresql-data-modeling: series
navigation, a Prisma Postgres alternative to local Docker at the DB
setup step, and a closing note on Prisma Next + Postgres/Compute.
- why-prisma-orm-generates-code-into-node-modules-and-why-it-ll-change:
tie the node_modules change to Prisma Next, and a new-project callout
for Prisma Postgres + Compute.
Callouts use the repo's ::: directive syntax; Compute is marked public
beta throughout.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The goal of the series is to explore and demonstrate different patterns, problems, and architectures for a modern backend by solving a concrete problem: **a grading system for online courses.** This is a good example because it features diverse relations types and is complex enough to represent a real-world use-case.
@@ -69,6 +78,10 @@ If you're using Visual Studio Code, the [Prisma extension](https://marketplace.v
69
78
70
79
> **Note**: If you don't want to use Docker, you can set up a [local PostgreSQL database](https://www.prisma.io/dataguide/postgresql/setting-up-a-local-postgresql-database) or a [hosted PostgreSQL database on Heroku](https://dev.to/prisma/how-to-setup-a-free-postgresql-database-on-heroku-1dc1).
71
80
81
+
:::ppg[Don't want to run Docker?]
82
+
The tutorial runs Postgres in a local container, which still works. If you'd rather skip that, create a [Prisma Postgres](https://www.prisma.io/postgres) database and use its connection string as your `DATABASE_URL`. Every schema, migration, and query step below is the same either way.
83
+
:::
84
+
72
85
## Clone the repository
73
86
74
87
The source code for the series can be found on [GitHub](https://github.com/2color/real-world-grading-app).
@@ -861,3 +874,9 @@ In the next parts of the series, you'll learn more about:
861
874
- Deployment
862
875
863
876
**Join for the [the next live stream](https://youtu.be/d9v7umfMNkM) which will be streamed live on YouTube at 6:00 PM CEST August 12th.**
877
+
878
+
:::tip[A note on versions]
879
+
This series uses an older version of Prisma ORM. The data modeling and query patterns still hold, but the tooling has moved on. [Prisma Next](https://www.prisma.io/blog/the-next-evolution-of-prisma-orm) is where the ORM is going: you describe your data in one contract file, and it generates the client and migrations from there. When you reach deployment in part four, [Prisma Postgres](https://www.prisma.io/postgres) and [Prisma Compute](https://www.prisma.io/compute) (public beta) can handle your database and hosting without leaving Prisma.
880
+
881
+
Next in the series: [REST, validation & tests](/backend-prisma-typescript-orm-with-postgresql-rest-api-validation-dcba1ps7kip3), then [authentication & authorization](/backend-prisma-typescript-orm-with-postgresql-auth-mngp1ps7kip4) and [CI & deployment](/backend-prisma-typescript-orm-with-postgresql-deployment-bbba1ps7kip5).
Copy file name to clipboardExpand all lines: apps/blog/content/blog/why-prisma-orm-generates-code-into-node-modules-and-why-it-ll-change/index.mdx
+8Lines changed: 8 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -62,6 +62,10 @@ This change will come later this year as part of Prisma ORM v7 and only affect t
62
62
- More predictability and no more workarounds due to magical behavior.
63
63
- Compliance with the assumption that `node_modules` can only be modified by package managers.
64
64
65
+
:::note[Part of a bigger change]
66
+
Getting the generated client out of `node_modules` is one piece of a bigger change. [Prisma Next](https://www.prisma.io/blog/the-next-evolution-of-prisma-orm) takes the idea all the way: you keep a single data contract, and the generated client lands in your source tree as normal code. You can read it, commit it, and bundle it like anything else, never hidden in `node_modules`.
67
+
:::
68
+
65
69
### `prisma-client` vs `prisma-client-js` generators
66
70
67
71
If you've followed our releases, you know that in [v6.6.0](https://github.com/prisma/prisma/releases/tag/6.6.0) we released a new generator, called simply [`prisma-client`](https://www.prisma.io/docs/orm/prisma-schema/overview/generators#prisma-client-early-access):
@@ -108,3 +112,7 @@ Here's a TLDR for what all of this means for you today:
108
112
-**If you experience issues with an `output` path** (regardless of whether you use the new `prisma-client` or the current `prisma-client-js` generator), please [open a new issue](https://github.com/prisma/prisma/issues) so we can help you resolve the problem.
109
113
110
114
As always, [reach out to us on X](https://pris.ly/x) or [join our Discord](https://pris.ly/discord) if you have any feedback or questions!
115
+
116
+
:::ppg[Starting a new project?]
117
+
If you're setting an `output` path on a new project as suggested above, the database and hosting can come from the same place. [Prisma Postgres](https://www.prisma.io/postgres) gives you a managed Postgres database, and [Prisma Compute](https://www.prisma.io/compute) (public beta) runs your TypeScript app next to it. The ORM itself is heading toward [Prisma Next](https://www.prisma.io/blog/the-next-evolution-of-prisma-orm).
0 commit comments