create-prisma 0.4.1 → 0.4.2-next.37.104.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 +66 -44
- package/dist/cli.mjs +1 -1
- package/dist/{create-H6Tk0JlE.mjs → create-BeFhatOc.mjs} +910 -993
- package/dist/index.d.mts +32 -39
- package/dist/index.mjs +3 -3
- package/package.json +7 -2
- package/templates/create/_shared/prisma/seed.ts.hbs +52 -0
- package/templates/create/astro/README.md.hbs +25 -15
- package/templates/create/astro/astro.config.mjs +6 -1
- package/templates/create/astro/deno.json.hbs +1 -1
- package/templates/create/astro/package.json.hbs +3 -2
- package/templates/create/astro/src/lib/prisma.ts.hbs +60 -40
- package/templates/create/astro/src/pages/api/users.ts.hbs +6 -22
- package/templates/create/astro/src/pages/index.astro.hbs +18 -55
- package/templates/create/elysia/README.md.hbs +27 -17
- package/templates/create/elysia/deno.json.hbs +1 -1
- package/templates/create/elysia/src/index.ts.hbs +15 -11
- package/templates/create/elysia/src/lib/prisma.ts.hbs +60 -43
- package/templates/create/elysia/tsconfig.json +1 -0
- package/templates/create/hono/README.md.hbs +27 -17
- package/templates/create/hono/deno.json.hbs +1 -1
- package/templates/create/hono/src/index.ts.hbs +9 -10
- package/templates/create/hono/src/lib/prisma.ts.hbs +60 -43
- package/templates/create/hono/tsconfig.json +1 -0
- package/templates/create/minimal/.yarnrc.yml.hbs +3 -0
- package/templates/create/minimal/README.md.hbs +39 -0
- package/templates/create/{turborepo → minimal}/deno.json.hbs +1 -1
- package/templates/create/minimal/package.json.hbs +13 -0
- package/templates/create/minimal/src/index.ts.hbs +43 -0
- package/templates/create/minimal/src/lib/prisma.ts.hbs +73 -0
- package/templates/create/{turborepo/apps/api → minimal}/tsconfig.json +3 -4
- package/templates/create/nest/README.md.hbs +28 -17
- package/templates/create/nest/deno.json.hbs +1 -1
- package/templates/create/nest/src/app.module.ts.hbs +5 -6
- package/templates/create/nest/src/lib/prisma.ts.hbs +60 -45
- package/templates/create/nest/src/prisma.service.ts.hbs +6 -5
- package/templates/create/nest/src/users.controller.ts.hbs +1 -2
- package/templates/create/nest/src/users.service.ts.hbs +2 -8
- package/templates/create/nest/tsconfig.json +1 -0
- package/templates/create/next/README.md.hbs +25 -13
- package/templates/create/next/deno.json.hbs +1 -1
- package/templates/create/next/src/app/page.tsx.hbs +16 -57
- package/templates/create/next/src/lib/prisma.ts.hbs +60 -40
- package/templates/create/next/tsconfig.json +1 -0
- package/templates/create/nuxt/README.md.hbs +26 -13
- package/templates/create/nuxt/app/pages/index.vue.hbs +12 -45
- package/templates/create/nuxt/deno.json.hbs +1 -1
- package/templates/create/nuxt/nuxt.config.ts +21 -0
- package/templates/create/nuxt/package.json.hbs +2 -1
- package/templates/create/nuxt/server/api/users.get.ts.hbs +4 -15
- package/templates/create/nuxt/server/utils/prisma.ts.hbs +60 -40
- package/templates/create/svelte/README.md.hbs +25 -15
- package/templates/create/svelte/deno.json.hbs +1 -1
- package/templates/create/svelte/package.json.hbs +1 -1
- package/templates/create/svelte/src/lib/server/prisma.ts.hbs +61 -41
- package/templates/create/svelte/src/routes/+page.server.ts.hbs +4 -15
- package/templates/create/svelte/src/routes/+page.svelte.hbs +13 -163
- package/templates/create/svelte/vite.config.ts +2 -1
- package/templates/create/tanstack-start/README.md.hbs +26 -13
- package/templates/create/tanstack-start/deno.json.hbs +1 -2
- package/templates/create/tanstack-start/package.json.hbs +1 -2
- package/templates/create/tanstack-start/src/lib/prisma.server.ts.hbs +60 -40
- package/templates/create/tanstack-start/src/routes/__root.tsx.hbs +2 -3
- package/templates/create/tanstack-start/src/routes/index.tsx.hbs +26 -77
- package/templates/create/tanstack-start/tsconfig.json +1 -0
- package/templates/create/tanstack-start/vite.config.ts +7 -1
- package/templates/create/astro/prisma/schema.prisma.hbs +0 -21
- package/templates/create/astro/prisma/seed.ts.hbs +0 -38
- package/templates/create/astro/prisma.config.ts +0 -13
- package/templates/create/elysia/prisma/schema.prisma.hbs +0 -25
- package/templates/create/elysia/prisma/seed.ts.hbs +0 -42
- package/templates/create/elysia/prisma.config.ts.hbs +0 -15
- package/templates/create/hono/prisma/schema.prisma.hbs +0 -25
- package/templates/create/hono/prisma/seed.ts.hbs +0 -42
- package/templates/create/hono/prisma.config.ts.hbs +0 -15
- package/templates/create/nest/prisma/schema.prisma.hbs +0 -25
- package/templates/create/nest/prisma/seed.ts.hbs +0 -44
- package/templates/create/nest/prisma.config.ts.hbs +0 -15
- package/templates/create/next/prisma/schema.prisma.hbs +0 -21
- package/templates/create/next/prisma/seed.ts.hbs +0 -38
- package/templates/create/next/prisma.config.ts +0 -13
- package/templates/create/nuxt/prisma/schema.prisma.hbs +0 -21
- package/templates/create/nuxt/prisma/seed.ts.hbs +0 -38
- package/templates/create/nuxt/prisma.config.ts +0 -13
- package/templates/create/svelte/prisma/schema.prisma.hbs +0 -21
- package/templates/create/svelte/prisma/seed.ts.hbs +0 -87
- package/templates/create/svelte/prisma.config.ts +0 -13
- package/templates/create/tanstack-start/prisma/schema.prisma.hbs +0 -21
- package/templates/create/tanstack-start/prisma/seed.ts.hbs +0 -37
- package/templates/create/tanstack-start/prisma.config.ts +0 -13
- package/templates/create/turborepo/README.md.hbs +0 -29
- package/templates/create/turborepo/apps/api/package.json.hbs +0 -19
- package/templates/create/turborepo/apps/api/src/index.ts.hbs +0 -51
- package/templates/create/turborepo/package.json.hbs +0 -24
- package/templates/create/turborepo/packages/db/package.json.hbs +0 -17
- package/templates/create/turborepo/packages/db/prisma/schema.prisma.hbs +0 -21
- package/templates/create/turborepo/packages/db/prisma/seed.ts.hbs +0 -38
- package/templates/create/turborepo/packages/db/prisma.config.ts +0 -13
- package/templates/create/turborepo/packages/db/src/client.ts.hbs +0 -58
- package/templates/create/turborepo/packages/db/src/index.ts +0 -2
- package/templates/create/turborepo/packages/db/tsconfig.json +0 -15
- package/templates/create/turborepo/turbo.json +0 -28
- /package/templates/create/{turborepo → elysia}/.yarnrc.yml.hbs +0 -0
package/README.md
CHANGED
|
@@ -1,41 +1,46 @@
|
|
|
1
1
|
# create-prisma
|
|
2
2
|
|
|
3
|
-
Scaffold a new app with Prisma already wired up.
|
|
3
|
+
Scaffold a new app with Prisma Next already wired up.
|
|
4
4
|
|
|
5
|
-
`create-prisma` gives you a project template, Prisma setup, database scripts, and a working starting point without making you assemble everything by hand.
|
|
5
|
+
`create-prisma@next` gives you a project template, Prisma Next 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 Prisma
|
|
13
|
-
- adds `db:
|
|
10
|
+
- adds Prisma Next dependencies for PostgreSQL or MongoDB
|
|
11
|
+
- runs `prisma-next init --no-install` to scaffold `prisma/contract.*`, `prisma-next.config.ts`, `prisma/db.ts`, `prisma-next.md`, and `.env.example`
|
|
12
|
+
- writes a template-specific Prisma Next runtime helper
|
|
13
|
+
- adds `contract:emit`, `db:init`, `db:update`, `db:verify`, `db:seed`, `migration:plan`, `migrate`, `migration:status`, and `migration:show` scripts
|
|
14
|
+
- adds `db:up` / `db:down` and `docker-compose.yml` for default MongoDB projects
|
|
14
15
|
- creates or updates `.env` with `DATABASE_URL`
|
|
15
|
-
- can install dependencies and run `prisma
|
|
16
|
+
- can install dependencies and run `prisma-next contract emit`
|
|
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.
|
|
16
21
|
|
|
17
22
|
## Quick Start
|
|
18
23
|
|
|
19
24
|
Use the package runner you already have:
|
|
20
25
|
|
|
21
26
|
```bash
|
|
22
|
-
npx create-prisma@
|
|
27
|
+
npx create-prisma@next
|
|
23
28
|
```
|
|
24
29
|
|
|
25
30
|
```bash
|
|
26
|
-
pnpm dlx create-prisma@
|
|
31
|
+
pnpm dlx create-prisma@next
|
|
27
32
|
```
|
|
28
33
|
|
|
29
34
|
```bash
|
|
30
|
-
yarn dlx create-prisma@
|
|
35
|
+
yarn dlx create-prisma@next
|
|
31
36
|
```
|
|
32
37
|
|
|
33
38
|
```bash
|
|
34
|
-
bunx create-prisma@
|
|
39
|
+
bunx create-prisma@next
|
|
35
40
|
```
|
|
36
41
|
|
|
37
42
|
```bash
|
|
38
|
-
deno run -A npm:create-prisma@
|
|
43
|
+
deno run -A npm:create-prisma@next
|
|
39
44
|
```
|
|
40
45
|
|
|
41
46
|
If you already have it available locally:
|
|
@@ -52,49 +57,70 @@ Create a project interactively:
|
|
|
52
57
|
create-prisma
|
|
53
58
|
```
|
|
54
59
|
|
|
60
|
+
Create a Minimal project non-interactively:
|
|
61
|
+
|
|
62
|
+
```bash
|
|
63
|
+
create-prisma --name my-script --template minimal --provider postgres
|
|
64
|
+
```
|
|
65
|
+
|
|
55
66
|
Create a Hono app non-interactively:
|
|
56
67
|
|
|
57
68
|
```bash
|
|
58
|
-
create-prisma --name my-api --template hono --provider
|
|
69
|
+
create-prisma --name my-api --template hono --provider postgres
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
Create a MongoDB app:
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
create-prisma --name my-api --template hono --provider mongodb
|
|
59
76
|
```
|
|
60
77
|
|
|
61
78
|
Scaffold into the current directory:
|
|
62
79
|
|
|
63
80
|
```bash
|
|
64
|
-
create-prisma --name . --template hono --provider
|
|
81
|
+
create-prisma --name . --template hono --provider postgres
|
|
65
82
|
```
|
|
66
83
|
|
|
67
|
-
|
|
84
|
+
Use TypeScript contract authoring:
|
|
68
85
|
|
|
69
86
|
```bash
|
|
70
|
-
create-prisma --name my-
|
|
87
|
+
create-prisma --name my-app --template next --authoring typescript
|
|
71
88
|
```
|
|
72
89
|
|
|
73
90
|
Use Prisma Postgres auto-provisioning:
|
|
74
91
|
|
|
75
92
|
```bash
|
|
76
|
-
create-prisma --name my-app --template nest --provider
|
|
93
|
+
create-prisma --name my-app --template nest --provider postgres --prisma-postgres
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
Target a specific Prisma Next release (useful for regression / bisect work):
|
|
97
|
+
|
|
98
|
+
```bash
|
|
99
|
+
create-prisma --name my-app --template hono --prisma-next-version 0.10.0
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Scaffold against an open PR via pkg.pr.new:
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
create-prisma --name my-app --template hono --prisma-next-version pkg-pr-new:bad6795
|
|
77
106
|
```
|
|
78
107
|
|
|
79
108
|
## Supported Templates
|
|
80
109
|
|
|
81
|
-
- `
|
|
82
|
-
- `
|
|
83
|
-
- `
|
|
84
|
-
- `
|
|
85
|
-
- `
|
|
86
|
-
- `
|
|
87
|
-
- `
|
|
88
|
-
- `
|
|
89
|
-
- `
|
|
110
|
+
- `minimal` - script-first Prisma Next starter with no web framework
|
|
111
|
+
- `hono` - lightweight TypeScript API server
|
|
112
|
+
- `elysia` - Bun-friendly TypeScript API server
|
|
113
|
+
- `nest` - structured Node API with controllers and services
|
|
114
|
+
- `next` - full-stack React app with App Router
|
|
115
|
+
- `svelte` - full-stack Svelte 5 app with Vite
|
|
116
|
+
- `astro` - content-oriented web app with server routes
|
|
117
|
+
- `nuxt` - full-stack Vue app with Nitro server routes
|
|
118
|
+
- `tanstack-start` - React app with file routes and server functions
|
|
90
119
|
|
|
91
120
|
## Supported Databases
|
|
92
121
|
|
|
93
|
-
- `postgresql`
|
|
94
|
-
- `
|
|
95
|
-
- `sqlite`
|
|
96
|
-
- `sqlserver`
|
|
97
|
-
- `cockroachdb`
|
|
122
|
+
- `postgres` / `postgresql`
|
|
123
|
+
- `mongo` / `mongodb`
|
|
98
124
|
|
|
99
125
|
## Supported Package Managers
|
|
100
126
|
|
|
@@ -108,26 +134,22 @@ create-prisma --name my-app --template nest --provider postgresql --prisma-postg
|
|
|
108
134
|
|
|
109
135
|
- `--name` project name or relative path
|
|
110
136
|
- `--template` choose the template
|
|
111
|
-
- `--provider`
|
|
137
|
+
- `--provider postgres|postgresql|mongo|mongodb` (default: `postgres`)
|
|
138
|
+
- `--authoring psl|typescript` (default: `psl`)
|
|
112
139
|
- `--package-manager` choose the package manager/runtime
|
|
113
|
-
- `--
|
|
140
|
+
- `--database-url` set `DATABASE_URL`
|
|
114
141
|
- `--yes` accept defaults and skip prompts
|
|
115
142
|
- `--no-install` scaffold only
|
|
116
|
-
- `--no-
|
|
143
|
+
- `--no-emit` skip `prisma-next contract emit`
|
|
117
144
|
- `--prisma-postgres` provision Prisma Postgres for PostgreSQL
|
|
118
|
-
- `--
|
|
145
|
+
- `--prisma-next-version <spec>` target a specific Prisma Next release, npm dist-tag, or
|
|
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>`.
|
|
119
149
|
- `--force` allow scaffolding into a non-empty directory
|
|
120
150
|
- `--verbose` print full command output
|
|
121
151
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
`create-prisma` can also help with a few optional extras:
|
|
125
|
-
|
|
126
|
-
- Prisma skills for coding agents
|
|
127
|
-
- Prisma MCP setup
|
|
128
|
-
- Prisma IDE extension install
|
|
129
|
-
|
|
130
|
-
These can be selected interactively or enabled with flags.
|
|
152
|
+
Generated Node-based Prisma Next projects document Node.js 24 LTS or newer.
|
|
131
153
|
|
|
132
154
|
## Local Development
|
|
133
155
|
|
package/dist/cli.mjs
CHANGED