create-prisma 0.4.2-pr.40.103.1 → 0.5.0-pr.41.123.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +72 -61
- package/dist/cli.mjs +1 -1
- package/dist/create-C0alltck.mjs +2467 -0
- package/dist/index.d.mts +43 -32
- package/dist/index.mjs +3 -3
- package/package.json +2 -7
- package/templates/create/astro/README.md.hbs +23 -22
- package/templates/create/astro/astro.config.mjs.hbs +10 -0
- package/templates/create/astro/deno.json.hbs +1 -1
- package/templates/create/astro/package.json.hbs +3 -3
- package/templates/create/astro/prisma/schema.prisma.hbs +21 -0
- package/templates/create/astro/prisma/seed.ts.hbs +38 -0
- package/templates/create/astro/prisma.config.ts.hbs +15 -0
- package/templates/create/astro/src/lib/prisma.ts.hbs +42 -60
- package/templates/create/astro/src/pages/api/users.ts.hbs +22 -6
- package/templates/create/astro/src/pages/index.astro.hbs +55 -18
- package/templates/create/elysia/README.md.hbs +24 -23
- package/templates/create/elysia/deno.json.hbs +1 -1
- package/templates/create/elysia/package.json.hbs +1 -0
- package/templates/create/elysia/prisma/schema.prisma.hbs +25 -0
- package/templates/create/elysia/prisma/seed.ts.hbs +38 -0
- package/templates/create/elysia/prisma.config.ts.hbs +15 -0
- package/templates/create/elysia/src/index.ts.hbs +12 -16
- package/templates/create/elysia/src/lib/prisma.ts.hbs +43 -60
- package/templates/create/elysia/tsconfig.json +0 -1
- package/templates/create/hono/README.md.hbs +24 -23
- package/templates/create/hono/deno.json.hbs +1 -1
- package/templates/create/hono/package.json.hbs +1 -0
- package/templates/create/hono/prisma/schema.prisma.hbs +25 -0
- package/templates/create/hono/prisma/seed.ts.hbs +38 -0
- package/templates/create/hono/prisma.config.ts.hbs +15 -0
- package/templates/create/hono/src/index.ts.hbs +11 -10
- package/templates/create/hono/src/lib/prisma.ts.hbs +43 -60
- package/templates/create/hono/tsconfig.json +0 -1
- package/templates/create/nest/README.md.hbs +28 -28
- package/templates/create/nest/deno.json.hbs +1 -1
- package/templates/create/nest/prisma/schema.prisma.hbs +25 -0
- package/templates/create/nest/prisma/seed.ts.hbs +40 -0
- package/templates/create/nest/prisma.config.ts.hbs +15 -0
- package/templates/create/nest/src/app.module.ts.hbs +6 -5
- package/templates/create/nest/src/lib/prisma.ts.hbs +45 -60
- package/templates/create/nest/src/prisma.service.ts.hbs +5 -6
- package/templates/create/nest/src/users.controller.ts.hbs +2 -1
- package/templates/create/nest/src/users.service.ts.hbs +8 -2
- package/templates/create/nest/tsconfig.json +0 -1
- package/templates/create/next/README.md.hbs +21 -22
- package/templates/create/next/deno.json.hbs +1 -1
- package/templates/create/next/{next.config.ts → next.config.ts.hbs} +1 -1
- package/templates/create/next/prisma/schema.prisma.hbs +21 -0
- package/templates/create/next/prisma/seed.ts.hbs +38 -0
- package/templates/create/next/prisma.config.ts.hbs +15 -0
- package/templates/create/next/src/app/page.tsx.hbs +55 -16
- package/templates/create/next/src/lib/prisma.ts.hbs +43 -60
- package/templates/create/nuxt/README.md.hbs +21 -23
- package/templates/create/nuxt/app/pages/index.vue.hbs +45 -12
- package/templates/create/nuxt/deno.json.hbs +1 -1
- package/templates/create/nuxt/nuxt.config.ts +0 -5
- package/templates/create/nuxt/package.json.hbs +1 -2
- package/templates/create/nuxt/prisma/schema.prisma.hbs +21 -0
- package/templates/create/nuxt/prisma/seed.ts.hbs +38 -0
- package/templates/create/nuxt/prisma.config.ts.hbs +15 -0
- package/templates/create/nuxt/server/api/users.get.ts.hbs +15 -4
- package/templates/create/nuxt/server/utils/prisma.ts.hbs +43 -60
- package/templates/create/svelte/README.md.hbs +23 -22
- package/templates/create/svelte/deno.json.hbs +1 -1
- package/templates/create/svelte/package.json.hbs +3 -2
- package/templates/create/svelte/prisma/schema.prisma.hbs +21 -0
- package/templates/create/svelte/prisma/seed.ts.hbs +38 -0
- package/templates/create/svelte/prisma.config.ts.hbs +15 -0
- package/templates/create/svelte/src/lib/server/prisma.ts.hbs +41 -61
- package/templates/create/svelte/src/routes/+page.server.ts.hbs +15 -4
- package/templates/create/svelte/src/routes/+page.svelte.hbs +163 -13
- package/templates/create/svelte/vite.config.ts +1 -2
- package/templates/create/tanstack-start/README.md.hbs +21 -23
- package/templates/create/tanstack-start/deno.json.hbs +2 -1
- package/templates/create/tanstack-start/package.json.hbs +8 -7
- package/templates/create/tanstack-start/prisma/schema.prisma.hbs +21 -0
- package/templates/create/tanstack-start/prisma/seed.ts.hbs +38 -0
- package/templates/create/tanstack-start/prisma.config.ts.hbs +15 -0
- package/templates/create/tanstack-start/src/lib/prisma.server.ts.hbs +43 -60
- package/templates/create/tanstack-start/src/routes/__root.tsx.hbs +3 -2
- package/templates/create/tanstack-start/src/routes/index.tsx.hbs +77 -26
- package/templates/create/tanstack-start/tsconfig.json +0 -1
- package/templates/create/tanstack-start/vite.config.ts +6 -4
- package/templates/create/turborepo/README.md.hbs +40 -0
- package/templates/create/turborepo/apps/api/package.json.hbs +26 -0
- package/templates/create/turborepo/apps/api/src/index.ts.hbs +51 -0
- package/templates/create/{minimal → turborepo/apps/api}/tsconfig.json +4 -3
- package/templates/create/{minimal → turborepo}/deno.json.hbs +1 -1
- package/templates/create/turborepo/package.json.hbs +30 -0
- package/templates/create/turborepo/packages/db/package.json.hbs +22 -0
- package/templates/create/turborepo/packages/db/prisma/schema.prisma.hbs +21 -0
- package/templates/create/turborepo/packages/db/prisma/seed.ts.hbs +38 -0
- package/templates/create/turborepo/packages/db/prisma.config.ts.hbs +15 -0
- package/templates/create/turborepo/packages/db/src/client.ts.hbs +63 -0
- package/templates/create/turborepo/packages/db/src/index.ts +2 -0
- package/templates/create/turborepo/packages/db/tsconfig.json +15 -0
- package/templates/create/turborepo/turbo.json +28 -0
- package/dist/create-CHVnIodq.mjs +0 -1896
- package/templates/create/_shared/prisma/seed.ts.hbs +0 -52
- package/templates/create/astro/astro.config.mjs +0 -10
- package/templates/create/minimal/.yarnrc.yml.hbs +0 -3
- package/templates/create/minimal/README.md.hbs +0 -39
- package/templates/create/minimal/package.json.hbs +0 -13
- package/templates/create/minimal/src/index.ts.hbs +0 -43
- package/templates/create/minimal/src/lib/prisma.ts.hbs +0 -73
- /package/templates/create/{elysia → turborepo}/.yarnrc.yml.hbs +0 -0
package/README.md
CHANGED
|
@@ -1,46 +1,42 @@
|
|
|
1
1
|
# create-prisma
|
|
2
2
|
|
|
3
|
-
Scaffold a new app with Prisma
|
|
3
|
+
Scaffold a new app with Prisma already wired up.
|
|
4
4
|
|
|
5
|
-
`create-prisma
|
|
5
|
+
`create-prisma` gives you a project template, Prisma setup, database scripts, and a working starting point without making you assemble everything by hand.
|
|
6
6
|
|
|
7
7
|
## What It Does
|
|
8
8
|
|
|
9
9
|
- creates a new app from a supported template
|
|
10
|
-
- adds Prisma
|
|
11
|
-
-
|
|
12
|
-
- writes a
|
|
13
|
-
- adds `
|
|
14
|
-
- adds `db:up` / `db:down` and `docker-compose.yml` for default MongoDB projects
|
|
10
|
+
- adds Prisma 7 dependencies for your database
|
|
11
|
+
- scaffolds `prisma/schema.prisma`, `prisma/seed.ts`, and `prisma.config.ts`
|
|
12
|
+
- writes a Prisma client singleton in the right place for the selected template
|
|
13
|
+
- adds `db:generate`, `db:migrate`, and `db:seed` scripts
|
|
15
14
|
- creates or updates `.env` with `DATABASE_URL`
|
|
16
|
-
- can install dependencies and run `prisma
|
|
17
|
-
|
|
18
|
-
`db:init`, migrations, and seeding are never run automatically. PostgreSQL projects show
|
|
19
|
-
`db:init` as a manual follow-up command; MongoDB projects show `db:up` plus the migration
|
|
20
|
-
plan/apply path for initial schema setup.
|
|
15
|
+
- can install dependencies and run `prisma generate` for you
|
|
16
|
+
- can deploy the finished app to Prisma Compute and return a live URL
|
|
21
17
|
|
|
22
18
|
## Quick Start
|
|
23
19
|
|
|
24
20
|
Use the package runner you already have:
|
|
25
21
|
|
|
26
22
|
```bash
|
|
27
|
-
npx create-prisma@
|
|
23
|
+
npx create-prisma@latest
|
|
28
24
|
```
|
|
29
25
|
|
|
30
26
|
```bash
|
|
31
|
-
pnpm dlx create-prisma@
|
|
27
|
+
pnpm dlx create-prisma@latest
|
|
32
28
|
```
|
|
33
29
|
|
|
34
30
|
```bash
|
|
35
|
-
yarn dlx create-prisma@
|
|
31
|
+
yarn dlx create-prisma@latest
|
|
36
32
|
```
|
|
37
33
|
|
|
38
34
|
```bash
|
|
39
|
-
bunx create-prisma@
|
|
35
|
+
bunx create-prisma@latest
|
|
40
36
|
```
|
|
41
37
|
|
|
42
38
|
```bash
|
|
43
|
-
deno run -A npm:create-prisma@
|
|
39
|
+
deno run -A npm:create-prisma@latest
|
|
44
40
|
```
|
|
45
41
|
|
|
46
42
|
If you already have it available locally:
|
|
@@ -57,70 +53,64 @@ Create a project interactively:
|
|
|
57
53
|
create-prisma
|
|
58
54
|
```
|
|
59
55
|
|
|
60
|
-
Create a Minimal project non-interactively:
|
|
61
|
-
|
|
62
|
-
```bash
|
|
63
|
-
create-prisma --name my-script --template minimal --provider postgres
|
|
64
|
-
```
|
|
65
|
-
|
|
66
56
|
Create a Hono app non-interactively:
|
|
67
57
|
|
|
68
58
|
```bash
|
|
69
|
-
create-prisma --name my-api --template hono --provider
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
Create a MongoDB app:
|
|
73
|
-
|
|
74
|
-
```bash
|
|
75
|
-
create-prisma --name my-api --template hono --provider mongodb
|
|
59
|
+
create-prisma --name my-api --template hono --provider postgresql
|
|
76
60
|
```
|
|
77
61
|
|
|
78
62
|
Scaffold into the current directory:
|
|
79
63
|
|
|
80
64
|
```bash
|
|
81
|
-
create-prisma --name . --template hono --provider
|
|
65
|
+
create-prisma --name . --template hono --provider postgresql
|
|
82
66
|
```
|
|
83
67
|
|
|
84
|
-
|
|
68
|
+
Create a monorepo with a shared Prisma package:
|
|
85
69
|
|
|
86
70
|
```bash
|
|
87
|
-
create-prisma --name my-
|
|
71
|
+
create-prisma --name my-monorepo --template turborepo --provider postgresql
|
|
88
72
|
```
|
|
89
73
|
|
|
90
74
|
Use Prisma Postgres auto-provisioning:
|
|
91
75
|
|
|
92
76
|
```bash
|
|
93
|
-
create-prisma --name my-app --template nest --provider
|
|
77
|
+
create-prisma --name my-app --template nest --provider postgresql --prisma-postgres
|
|
94
78
|
```
|
|
95
79
|
|
|
96
|
-
|
|
80
|
+
Deploy a supported app to Prisma Compute:
|
|
97
81
|
|
|
98
82
|
```bash
|
|
99
|
-
create-prisma --name my-
|
|
83
|
+
create-prisma --name my-api --template hono --provider postgresql --deploy
|
|
100
84
|
```
|
|
101
85
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
```bash
|
|
105
|
-
create-prisma --name my-app --template hono --prisma-next-version pkg-pr-new:bad6795
|
|
106
|
-
```
|
|
86
|
+
With PostgreSQL, no `--database-url`, and no `--no-prisma-postgres`, the Compute flow creates a Prisma Compute project, creates a `main` Prisma Postgres database on the `main` branch, writes `DATABASE_URL` to `.env`, and deploys the app with environment variables loaded from `.env`.
|
|
107
87
|
|
|
108
88
|
## Supported Templates
|
|
109
89
|
|
|
110
|
-
- `
|
|
111
|
-
- `
|
|
112
|
-
- `
|
|
113
|
-
- `
|
|
114
|
-
- `
|
|
115
|
-
- `
|
|
116
|
-
- `
|
|
117
|
-
- `
|
|
118
|
-
- `
|
|
90
|
+
- `hono`
|
|
91
|
+
- `elysia`
|
|
92
|
+
- `nest`
|
|
93
|
+
- `next`
|
|
94
|
+
- `svelte`
|
|
95
|
+
- `astro`
|
|
96
|
+
- `nuxt`
|
|
97
|
+
- `tanstack-start`
|
|
98
|
+
- `turborepo`
|
|
99
|
+
|
|
100
|
+
Prisma Compute deployment is currently supported for:
|
|
101
|
+
|
|
102
|
+
- `hono`
|
|
103
|
+
- `elysia`
|
|
104
|
+
- `next`
|
|
105
|
+
- `tanstack-start`
|
|
119
106
|
|
|
120
107
|
## Supported Databases
|
|
121
108
|
|
|
122
|
-
- `
|
|
123
|
-
- `
|
|
109
|
+
- `postgresql`
|
|
110
|
+
- `mysql`
|
|
111
|
+
- `sqlite`
|
|
112
|
+
- `sqlserver`
|
|
113
|
+
- `cockroachdb`
|
|
124
114
|
|
|
125
115
|
## Supported Package Managers
|
|
126
116
|
|
|
@@ -134,22 +124,43 @@ create-prisma --name my-app --template hono --prisma-next-version pkg-pr-new:bad
|
|
|
134
124
|
|
|
135
125
|
- `--name` project name or relative path
|
|
136
126
|
- `--template` choose the template
|
|
137
|
-
- `--provider
|
|
138
|
-
- `--authoring psl|typescript` (default: `psl`)
|
|
127
|
+
- `--provider` choose the database provider
|
|
139
128
|
- `--package-manager` choose the package manager/runtime
|
|
140
|
-
- `--
|
|
129
|
+
- `--schema-preset empty|basic`
|
|
130
|
+
- `--deploy` deploy supported templates to Prisma Compute
|
|
141
131
|
- `--yes` accept defaults and skip prompts
|
|
142
132
|
- `--no-install` scaffold only
|
|
143
|
-
- `--no-
|
|
133
|
+
- `--no-generate` skip `prisma generate`
|
|
144
134
|
- `--prisma-postgres` provision Prisma Postgres for PostgreSQL
|
|
145
|
-
- `--
|
|
146
|
-
pkg.pr.new PR preview. Accepts a published version (`0.10.0`, `0.11.0-dev.9`),
|
|
147
|
-
an npm dist-tag (`latest` (default), `dev`, `next`, …), or `pkg-pr-new:<sha|branch|pr-number>`
|
|
148
|
-
to install from `https://pkg.pr.new/prisma/prisma-next/<package>@<ref>`.
|
|
135
|
+
- `--skills --mcp --extension` enable optional add-ons
|
|
149
136
|
- `--force` allow scaffolding into a non-empty directory
|
|
150
137
|
- `--verbose` print full command output
|
|
151
138
|
|
|
152
|
-
|
|
139
|
+
## Add-ons
|
|
140
|
+
|
|
141
|
+
`create-prisma` can also help with a few optional extras:
|
|
142
|
+
|
|
143
|
+
- Prisma skills for coding agents
|
|
144
|
+
- Prisma MCP setup
|
|
145
|
+
- Prisma IDE extension install
|
|
146
|
+
|
|
147
|
+
These can be selected interactively or enabled with flags.
|
|
148
|
+
|
|
149
|
+
## Deploy to Prisma Compute
|
|
150
|
+
|
|
151
|
+
After scaffolding, `create-prisma` can deploy your app to [Prisma Compute](https://www.prisma.io/docs/compute), the serverless hosting for TypeScript apps that runs next to your Prisma Postgres database. It is offered for the templates the Prisma CLI can deploy today: `hono`, `elysia`, `next`, and `tanstack-start`.
|
|
152
|
+
|
|
153
|
+
Accept the prompt ("Deploy to Prisma Compute now?") when it appears, or pass the flag:
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
create-prisma --name my-api --template hono --provider postgresql --deploy
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
The deploy step signs you in with the Prisma CLI if you are not signed in yet. With PostgreSQL, no `--database-url`, and no `--no-prisma-postgres`, setup creates a Prisma Compute project, creates a `main` Prisma Postgres database on the `main` branch, writes `DATABASE_URL` to `.env`, runs the requested Prisma setup, then deploys the app with environment variables loaded from `.env`.
|
|
160
|
+
|
|
161
|
+
A `compute:deploy` script is added to the generated project so you can redeploy app changes later. That script only runs `@prisma/cli@latest app deploy` with `.env`; it does not create a new project, create a new database, run migrations, or seed data.
|
|
162
|
+
|
|
163
|
+
The deploy prompt is skipped in `--yes` runs unless you pass `--deploy`. Browser sign-in may still need a person at the keyboard if no Prisma CLI session exists.
|
|
153
164
|
|
|
154
165
|
## Local Development
|
|
155
166
|
|
package/dist/cli.mjs
CHANGED