create-prisma 0.4.1 → 0.4.2-next.37.80.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.
Files changed (119) hide show
  1. package/README.md +43 -35
  2. package/dist/cli.mjs +1 -1
  3. package/dist/{create-H6Tk0JlE.mjs → create-CfH21J9-.mjs} +529 -914
  4. package/dist/index.d.mts +28 -25
  5. package/dist/index.mjs +3 -3
  6. package/package.json +2 -2
  7. package/templates/create/_shared/packages/db/prisma/seed.ts.hbs +43 -0
  8. package/templates/create/_shared/prisma/seed.ts.hbs +55 -0
  9. package/templates/create/astro/README.md.hbs +23 -12
  10. package/templates/create/astro/deno.json.hbs +1 -1
  11. package/templates/create/astro/prisma/contract.prisma.hbs +44 -0
  12. package/templates/create/astro/prisma/contract.ts.hbs +85 -0
  13. package/templates/create/astro/prisma-next.config.ts.hbs +13 -0
  14. package/templates/create/astro/src/lib/prisma.ts.hbs +49 -43
  15. package/templates/create/astro/src/pages/api/users.ts.hbs +5 -12
  16. package/templates/create/astro/src/pages/index.astro.hbs +19 -21
  17. package/templates/create/elysia/.yarnrc.yml.hbs +3 -0
  18. package/templates/create/elysia/README.md.hbs +27 -18
  19. package/templates/create/elysia/deno.json.hbs +1 -1
  20. package/templates/create/elysia/prisma/contract.prisma.hbs +44 -0
  21. package/templates/create/elysia/prisma/contract.ts.hbs +85 -0
  22. package/templates/create/elysia/prisma-next.config.ts.hbs +13 -0
  23. package/templates/create/elysia/src/index.ts.hbs +12 -7
  24. package/templates/create/elysia/src/lib/prisma.ts.hbs +49 -46
  25. package/templates/create/elysia/tsconfig.json +1 -0
  26. package/templates/create/hono/README.md.hbs +27 -18
  27. package/templates/create/hono/deno.json.hbs +1 -1
  28. package/templates/create/hono/prisma/contract.prisma.hbs +44 -0
  29. package/templates/create/hono/prisma/contract.ts.hbs +85 -0
  30. package/templates/create/hono/prisma-next.config.ts.hbs +13 -0
  31. package/templates/create/hono/src/index.ts.hbs +8 -6
  32. package/templates/create/hono/src/lib/prisma.ts.hbs +49 -46
  33. package/templates/create/hono/tsconfig.json +1 -0
  34. package/templates/create/nest/README.md.hbs +28 -18
  35. package/templates/create/nest/deno.json.hbs +1 -1
  36. package/templates/create/nest/prisma/contract.prisma.hbs +44 -0
  37. package/templates/create/nest/prisma/contract.ts.hbs +85 -0
  38. package/templates/create/nest/prisma-next.config.ts.hbs +13 -0
  39. package/templates/create/nest/src/lib/prisma.ts.hbs +49 -48
  40. package/templates/create/nest/src/prisma.service.ts.hbs +6 -5
  41. package/templates/create/nest/src/users.service.ts.hbs +1 -6
  42. package/templates/create/nest/tsconfig.json +1 -0
  43. package/templates/create/next/README.md.hbs +22 -11
  44. package/templates/create/next/deno.json.hbs +1 -1
  45. package/templates/create/next/prisma/contract.prisma.hbs +44 -0
  46. package/templates/create/next/prisma/contract.ts.hbs +85 -0
  47. package/templates/create/next/prisma-next.config.ts.hbs +13 -0
  48. package/templates/create/next/src/app/page.tsx.hbs +21 -26
  49. package/templates/create/next/src/lib/prisma.ts.hbs +49 -43
  50. package/templates/create/next/tsconfig.json +1 -0
  51. package/templates/create/nuxt/README.md.hbs +22 -11
  52. package/templates/create/nuxt/app/pages/index.vue.hbs +14 -12
  53. package/templates/create/nuxt/deno.json.hbs +1 -1
  54. package/templates/create/nuxt/nuxt.config.ts +16 -0
  55. package/templates/create/nuxt/prisma/contract.prisma.hbs +44 -0
  56. package/templates/create/nuxt/prisma/contract.ts.hbs +85 -0
  57. package/templates/create/nuxt/prisma-next.config.ts.hbs +13 -0
  58. package/templates/create/nuxt/server/api/users.get.ts.hbs +3 -9
  59. package/templates/create/nuxt/server/utils/prisma.ts.hbs +49 -43
  60. package/templates/create/svelte/README.md.hbs +23 -12
  61. package/templates/create/svelte/deno.json.hbs +1 -1
  62. package/templates/create/svelte/prisma/contract.prisma.hbs +44 -0
  63. package/templates/create/svelte/prisma/contract.ts.hbs +85 -0
  64. package/templates/create/svelte/prisma-next.config.ts.hbs +13 -0
  65. package/templates/create/svelte/src/lib/server/prisma.ts.hbs +50 -44
  66. package/templates/create/svelte/src/routes/+page.server.ts.hbs +3 -9
  67. package/templates/create/svelte/src/routes/+page.svelte.hbs +21 -16
  68. package/templates/create/tanstack-start/README.md.hbs +22 -11
  69. package/templates/create/tanstack-start/deno.json.hbs +1 -2
  70. package/templates/create/tanstack-start/prisma/contract.prisma.hbs +44 -0
  71. package/templates/create/tanstack-start/prisma/contract.ts.hbs +85 -0
  72. package/templates/create/tanstack-start/prisma-next.config.ts.hbs +13 -0
  73. package/templates/create/tanstack-start/src/lib/prisma.server.ts.hbs +49 -43
  74. package/templates/create/tanstack-start/src/routes/__root.tsx.hbs +2 -3
  75. package/templates/create/tanstack-start/src/routes/index.tsx.hbs +27 -38
  76. package/templates/create/tanstack-start/tsconfig.json +1 -0
  77. package/templates/create/turborepo/README.md.hbs +25 -14
  78. package/templates/create/turborepo/apps/api/deno.json.hbs +6 -0
  79. package/templates/create/turborepo/apps/api/package.json.hbs +7 -0
  80. package/templates/create/turborepo/apps/api/src/index.ts.hbs +6 -13
  81. package/templates/create/turborepo/deno.json.hbs +5 -1
  82. package/templates/create/turborepo/package.json.hbs +12 -4
  83. package/templates/create/turborepo/packages/db/deno.json.hbs +6 -0
  84. package/templates/create/turborepo/packages/db/package.json.hbs +5 -0
  85. package/templates/create/turborepo/packages/db/prisma/contract.prisma.hbs +44 -0
  86. package/templates/create/turborepo/packages/db/prisma/contract.ts.hbs +85 -0
  87. package/templates/create/turborepo/packages/db/prisma-next.config.ts.hbs +13 -0
  88. package/templates/create/turborepo/packages/db/src/client.ts.hbs +56 -44
  89. package/templates/create/turborepo/packages/db/src/index.ts +1 -1
  90. package/templates/create/turborepo/packages/db/tsconfig.json +2 -1
  91. package/templates/create/turborepo/pnpm-workspace.yaml.hbs +5 -0
  92. package/templates/create/turborepo/turbo.json +9 -3
  93. package/templates/create/astro/prisma/schema.prisma.hbs +0 -21
  94. package/templates/create/astro/prisma/seed.ts.hbs +0 -38
  95. package/templates/create/astro/prisma.config.ts +0 -13
  96. package/templates/create/elysia/prisma/schema.prisma.hbs +0 -25
  97. package/templates/create/elysia/prisma/seed.ts.hbs +0 -42
  98. package/templates/create/elysia/prisma.config.ts.hbs +0 -15
  99. package/templates/create/hono/prisma/schema.prisma.hbs +0 -25
  100. package/templates/create/hono/prisma/seed.ts.hbs +0 -42
  101. package/templates/create/hono/prisma.config.ts.hbs +0 -15
  102. package/templates/create/nest/prisma/schema.prisma.hbs +0 -25
  103. package/templates/create/nest/prisma/seed.ts.hbs +0 -44
  104. package/templates/create/nest/prisma.config.ts.hbs +0 -15
  105. package/templates/create/next/prisma/schema.prisma.hbs +0 -21
  106. package/templates/create/next/prisma/seed.ts.hbs +0 -38
  107. package/templates/create/next/prisma.config.ts +0 -13
  108. package/templates/create/nuxt/prisma/schema.prisma.hbs +0 -21
  109. package/templates/create/nuxt/prisma/seed.ts.hbs +0 -38
  110. package/templates/create/nuxt/prisma.config.ts +0 -13
  111. package/templates/create/svelte/prisma/schema.prisma.hbs +0 -21
  112. package/templates/create/svelte/prisma/seed.ts.hbs +0 -87
  113. package/templates/create/svelte/prisma.config.ts +0 -13
  114. package/templates/create/tanstack-start/prisma/schema.prisma.hbs +0 -21
  115. package/templates/create/tanstack-start/prisma/seed.ts.hbs +0 -37
  116. package/templates/create/tanstack-start/prisma.config.ts +0 -13
  117. package/templates/create/turborepo/packages/db/prisma/schema.prisma.hbs +0 -21
  118. package/templates/create/turborepo/packages/db/prisma/seed.ts.hbs +0 -38
  119. package/templates/create/turborepo/packages/db/prisma.config.ts +0 -13
@@ -0,0 +1,13 @@
1
+ import "dotenv/config";
2
+ {{#if (eq provider "mongo")}}
3
+ import { defineConfig } from "@prisma-next/mongo/config";
4
+ {{else}}
5
+ import { defineConfig } from "@prisma-next/postgres/config";
6
+ {{/if}}
7
+
8
+ export default defineConfig({
9
+ contract: "./prisma/contract{{#if (eq authoring "typescript")}}.ts{{else}}.prisma{{/if}}",
10
+ db: {
11
+ connection: process.env["DATABASE_URL"],
12
+ },
13
+ });
@@ -1,58 +1,70 @@
1
+ {{#unless (eq packageManager "deno")}}
1
2
  import path from "node:path";
2
3
  import { fileURLToPath } from "node:url";
3
4
  import dotenv from "dotenv";
4
- import { PrismaClient } from "./generated/prisma/client";
5
- {{#if (eq provider "postgresql")}}
6
- import { PrismaPg } from "@prisma/adapter-pg";
7
- {{/if}}
8
- {{#if (eq provider "cockroachdb")}}
9
- import { PrismaPg } from "@prisma/adapter-pg";
10
- {{/if}}
11
- {{#if (eq provider "mysql")}}
12
- import { PrismaMariaDb } from "@prisma/adapter-mariadb";
13
- {{/if}}
14
- {{#if (eq provider "sqlite")}}
15
- import { PrismaBetterSqlite3 } from "@prisma/adapter-better-sqlite3";
16
- {{/if}}
17
- {{#if (eq provider "sqlserver")}}
18
- import { PrismaMssql } from "@prisma/adapter-mssql";
5
+ {{else}}
6
+ import "dotenv/config";
7
+ {{/unless}}
8
+ {{#if (eq provider "mongo")}}
9
+ import mongo from "@prisma-next/mongo/runtime";
10
+ {{else}}
11
+ import postgres from "@prisma-next/postgres/runtime";
19
12
  {{/if}}
13
+ import type { Contract } from "../prisma/contract.d";
14
+ import contractJson from "../prisma/contract.json" with { type: "json" };
20
15
 
16
+ {{#unless (eq packageManager "deno")}}
21
17
  const moduleDir = path.dirname(fileURLToPath(import.meta.url));
22
18
  dotenv.config({ path: path.resolve(moduleDir, "../.env"), quiet: true });
19
+ {{/unless}}
23
20
 
24
- {{#if (eq provider "sqlite")}}
25
- const databaseUrl = process.env.DATABASE_URL ?? "file:./dev.db";
26
- {{else}}
27
- const databaseUrl = process.env.DATABASE_URL;
28
- if (!databaseUrl) {
29
- throw new Error("DATABASE_URL is required");
30
- }
31
- {{/if}}
32
-
33
- {{#if (eq provider "postgresql")}}
34
- const adapter = new PrismaPg({
35
- connectionString: databaseUrl,
21
+ {{#if (eq provider "mongo")}}
22
+ export const db = mongo<Contract>({
23
+ contractJson,
24
+ url: process.env["DATABASE_URL"],
36
25
  });
37
- {{/if}}
38
- {{#if (eq provider "cockroachdb")}}
39
- const adapter = new PrismaPg({
40
- connectionString: databaseUrl,
26
+ {{else}}
27
+ export const db = postgres<Contract>({
28
+ contractJson,
29
+ url: process.env["DATABASE_URL"],
41
30
  });
42
31
  {{/if}}
43
- {{#if (eq provider "mysql")}}
44
- const adapter = new PrismaMariaDb(databaseUrl);
45
- {{/if}}
46
- {{#if (eq provider "sqlite")}}
47
- const adapter = new PrismaBetterSqlite3({
48
- url: databaseUrl,
49
- });
32
+
33
+ export type StarterUser = {
34
+ id: string;
35
+ email: string;
36
+ name: string | null;
37
+ createdAt: Date | null;
38
+ };
39
+
40
+ export async function listUsers(limit = 10): Promise<StarterUser[]> {
41
+ {{#if (eq schemaPreset "basic")}}
42
+ {{#if (eq provider "mongo")}}
43
+ const users: StarterUser[] = [];
44
+
45
+ for await (const user of db.orm.users.select("_id", "email", "name").take(limit).all()) {
46
+ users.push({
47
+ id: String(user._id),
48
+ email: user.email,
49
+ name: user.name ?? null,
50
+ createdAt: null,
51
+ });
52
+ }
53
+
54
+ return users;
55
+ {{else}}
56
+ const users = await db.orm.User.select("id", "email", "name", "createdAt").take(limit).all();
57
+
58
+ return users.map((user) => ({
59
+ id: String(user.id),
60
+ email: user.email,
61
+ name: user.name ?? null,
62
+ createdAt: user.createdAt,
63
+ }));
50
64
  {{/if}}
51
- {{#if (eq provider "sqlserver")}}
52
- const adapter = new PrismaMssql(databaseUrl);
65
+ {{else}}
66
+ return [];
53
67
  {{/if}}
68
+ }
54
69
 
55
- const prisma = new PrismaClient({ adapter });
56
-
57
- export { prisma };
58
- export default prisma;
70
+ export default db;
@@ -1,2 +1,2 @@
1
- export { prisma } from "./client";
1
+ export { db, listUsers, type StarterUser } from "./client";
2
2
  export { default } from "./client";
@@ -3,6 +3,7 @@
3
3
  "target": "ES2022",
4
4
  "module": "ESNext",
5
5
  "moduleResolution": "Bundler",
6
+ "resolveJsonModule": true,
6
7
  "verbatimModuleSyntax": true,
7
8
  "strict": true,
8
9
  "esModuleInterop": true,
@@ -11,5 +12,5 @@
11
12
  "outDir": "dist",
12
13
  "rootDir": "."
13
14
  },
14
- "include": ["src/**/*.ts", "prisma/**/*.ts", "prisma.config.ts"]
15
+ "include": ["src/**/*.ts", "prisma/**/*.ts", "prisma-next.config.ts"]
15
16
  }
@@ -0,0 +1,5 @@
1
+ {{#if (eq packageManager "pnpm")}}
2
+ packages:
3
+ - "apps/*"
4
+ - "packages/*"
5
+ {{/if}}
@@ -12,17 +12,23 @@
12
12
  "typecheck": {
13
13
  "dependsOn": ["^typecheck"]
14
14
  },
15
- "db:generate": {
15
+ "contract:emit": {
16
16
  "cache": false
17
17
  },
18
- "db:push": {
18
+ "db:init": {
19
19
  "cache": false
20
20
  },
21
- "db:migrate": {
21
+ "db:update": {
22
22
  "cache": false
23
23
  },
24
24
  "db:seed": {
25
25
  "cache": false
26
+ },
27
+ "migration:plan": {
28
+ "cache": false
29
+ },
30
+ "migration:apply": {
31
+ "cache": false
26
32
  }
27
33
  }
28
34
  }
@@ -1,21 +0,0 @@
1
- generator client {
2
- provider = "prisma-client"
3
- output = "../src/generated/prisma"
4
- {{#if (eq packageManager "deno")}}
5
- runtime = "deno"
6
- {{/if}}
7
- }
8
-
9
- datasource db {
10
- provider = "{{provider}}"
11
- }
12
- {{#if (eq schemaPreset "basic")}}
13
-
14
- model User {
15
- id String @id @default(cuid())
16
- email String @unique
17
- name String?
18
- createdAt DateTime @default(now())
19
- updatedAt DateTime @updatedAt
20
- }
21
- {{/if}}
@@ -1,38 +0,0 @@
1
- import prisma from "../src/lib/prisma";
2
-
3
- async function main() {
4
- {{#if (eq schemaPreset "basic")}}
5
- const users = await Promise.all([
6
- prisma.user.upsert({
7
- where: { email: "alice@prisma.io" },
8
- update: { name: "Alice" },
9
- create: {
10
- email: "alice@prisma.io",
11
- name: "Alice",
12
- },
13
- }),
14
- prisma.user.upsert({
15
- where: { email: "bob@prisma.io" },
16
- update: { name: "Bob" },
17
- create: {
18
- email: "bob@prisma.io",
19
- name: "Bob",
20
- },
21
- }),
22
- ]);
23
-
24
- console.log(`Seeded ${users.length} users.`);
25
- {{else}}
26
- console.log("No seed data defined for the empty schema preset.");
27
- {{/if}}
28
- }
29
-
30
- main()
31
- .then(async () => {
32
- await prisma.$disconnect();
33
- })
34
- .catch(async (error) => {
35
- console.error(error);
36
- await prisma.$disconnect();
37
- process.exit(1);
38
- });
@@ -1,13 +0,0 @@
1
- import "dotenv/config";
2
- import { defineConfig, env } from "prisma/config";
3
-
4
- export default defineConfig({
5
- schema: "prisma/schema.prisma",
6
- migrations: {
7
- path: "prisma/migrations",
8
- seed: "tsx prisma/seed.ts",
9
- },
10
- datasource: {
11
- url: env("DATABASE_URL"),
12
- },
13
- });
@@ -1,25 +0,0 @@
1
- generator client {
2
- provider = "prisma-client"
3
- output = "../src/generated/prisma"
4
- {{#if (eq packageManager "deno")}}
5
- runtime = "deno"
6
- {{else}}
7
- {{#if (eq packageManager "bun")}}
8
- runtime = "bun"
9
- {{/if}}
10
- {{/if}}
11
- }
12
-
13
- datasource db {
14
- provider = "{{provider}}"
15
- }
16
- {{#if (eq schemaPreset "basic")}}
17
-
18
- model User {
19
- id String @id @default(cuid())
20
- email String @unique
21
- name String?
22
- createdAt DateTime @default(now())
23
- updatedAt DateTime @updatedAt
24
- }
25
- {{/if}}
@@ -1,42 +0,0 @@
1
- import prisma from "../src/lib/prisma{{#if (eq packageManager "deno")}}.ts{{/if}}";
2
-
3
- async function main() {
4
- {{#if (eq schemaPreset "basic")}}
5
- const users = await Promise.all([
6
- prisma.user.upsert({
7
- where: { email: "alice@prisma.io" },
8
- update: { name: "Alice" },
9
- create: {
10
- email: "alice@prisma.io",
11
- name: "Alice",
12
- },
13
- }),
14
- prisma.user.upsert({
15
- where: { email: "bob@prisma.io" },
16
- update: { name: "Bob" },
17
- create: {
18
- email: "bob@prisma.io",
19
- name: "Bob",
20
- },
21
- }),
22
- ]);
23
-
24
- console.log(`Seeded ${users.length} users.`);
25
- {{else}}
26
- console.log("No seed data defined for the empty schema preset.");
27
- {{/if}}
28
- }
29
-
30
- main()
31
- .then(async () => {
32
- await prisma.$disconnect();
33
- })
34
- .catch(async (error) => {
35
- console.error(error);
36
- await prisma.$disconnect();
37
- {{#if (eq packageManager "deno")}}
38
- Deno.exit(1);
39
- {{else}}
40
- process.exit(1);
41
- {{/if}}
42
- });
@@ -1,15 +0,0 @@
1
- {{#if (requiresDotenvConfigImport packageManager)}}
2
- import "dotenv/config";
3
- {{/if}}
4
- import { defineConfig, env } from "prisma/config";
5
-
6
- export default defineConfig({
7
- schema: "prisma/schema.prisma",
8
- migrations: {
9
- path: "prisma/migrations",
10
- seed: "{{#if (eq packageManager "deno")}}deno run -A --env-file=.env ./prisma/seed.ts{{else}}{{#if (eq packageManager "bun")}}bun ./prisma/seed.ts{{else}}tsx prisma/seed.ts{{/if}}{{/if}}",
11
- },
12
- datasource: {
13
- url: env("DATABASE_URL"),
14
- },
15
- });
@@ -1,25 +0,0 @@
1
- generator client {
2
- provider = "prisma-client"
3
- output = "../src/generated/prisma"
4
- {{#if (eq packageManager "deno")}}
5
- runtime = "deno"
6
- {{else}}
7
- {{#if (eq packageManager "bun")}}
8
- runtime = "bun"
9
- {{/if}}
10
- {{/if}}
11
- }
12
-
13
- datasource db {
14
- provider = "{{provider}}"
15
- }
16
- {{#if (eq schemaPreset "basic")}}
17
-
18
- model User {
19
- id String @id @default(cuid())
20
- email String @unique
21
- name String?
22
- createdAt DateTime @default(now())
23
- updatedAt DateTime @updatedAt
24
- }
25
- {{/if}}
@@ -1,42 +0,0 @@
1
- import prisma from "../src/lib/prisma{{#if (eq packageManager "deno")}}.ts{{/if}}";
2
-
3
- async function main() {
4
- {{#if (eq schemaPreset "basic")}}
5
- const users = await Promise.all([
6
- prisma.user.upsert({
7
- where: { email: "alice@prisma.io" },
8
- update: { name: "Alice" },
9
- create: {
10
- email: "alice@prisma.io",
11
- name: "Alice",
12
- },
13
- }),
14
- prisma.user.upsert({
15
- where: { email: "bob@prisma.io" },
16
- update: { name: "Bob" },
17
- create: {
18
- email: "bob@prisma.io",
19
- name: "Bob",
20
- },
21
- }),
22
- ]);
23
-
24
- console.log(`Seeded ${users.length} users.`);
25
- {{else}}
26
- console.log("No seed data defined for the empty schema preset.");
27
- {{/if}}
28
- }
29
-
30
- main()
31
- .then(async () => {
32
- await prisma.$disconnect();
33
- })
34
- .catch(async (error) => {
35
- console.error(error);
36
- await prisma.$disconnect();
37
- {{#if (eq packageManager "deno")}}
38
- Deno.exit(1);
39
- {{else}}
40
- process.exit(1);
41
- {{/if}}
42
- });
@@ -1,15 +0,0 @@
1
- {{#if (requiresDotenvConfigImport packageManager)}}
2
- import "dotenv/config";
3
- {{/if}}
4
- import { defineConfig, env } from "prisma/config";
5
-
6
- export default defineConfig({
7
- schema: "prisma/schema.prisma",
8
- migrations: {
9
- path: "prisma/migrations",
10
- seed: "{{#if (eq packageManager "deno")}}deno run -A --env-file=.env ./prisma/seed.ts{{else}}{{#if (eq packageManager "bun")}}bun ./prisma/seed.ts{{else}}tsx prisma/seed.ts{{/if}}{{/if}}",
11
- },
12
- datasource: {
13
- url: env("DATABASE_URL"),
14
- },
15
- });
@@ -1,25 +0,0 @@
1
- generator client {
2
- provider = "prisma-client"
3
- output = "../src/generated/prisma"
4
- {{#if (eq packageManager "deno")}}
5
- runtime = "deno"
6
- {{else}}
7
- {{#if (eq packageManager "bun")}}
8
- runtime = "bun"
9
- {{/if}}
10
- {{/if}}
11
- }
12
-
13
- datasource db {
14
- provider = "{{provider}}"
15
- }
16
- {{#if (eq schemaPreset "basic")}}
17
-
18
- model User {
19
- id String @id @default(cuid())
20
- email String @unique
21
- name String?
22
- createdAt DateTime @default(now())
23
- updatedAt DateTime @updatedAt
24
- }
25
- {{/if}}
@@ -1,44 +0,0 @@
1
- import { createPrismaClient } from "../src/lib/prisma{{#if (eq packageManager "deno")}}.ts{{/if}}";
2
-
3
- const prisma = createPrismaClient();
4
-
5
- async function main() {
6
- {{#if (eq schemaPreset "basic")}}
7
- const users = await Promise.all([
8
- prisma.user.upsert({
9
- where: { email: "alice@prisma.io" },
10
- update: { name: "Alice" },
11
- create: {
12
- email: "alice@prisma.io",
13
- name: "Alice",
14
- },
15
- }),
16
- prisma.user.upsert({
17
- where: { email: "bob@prisma.io" },
18
- update: { name: "Bob" },
19
- create: {
20
- email: "bob@prisma.io",
21
- name: "Bob",
22
- },
23
- }),
24
- ]);
25
-
26
- console.log(`Seeded ${users.length} users.`);
27
- {{else}}
28
- console.log("No seed data defined for the empty schema preset.");
29
- {{/if}}
30
- }
31
-
32
- main()
33
- .then(async () => {
34
- await prisma.$disconnect();
35
- })
36
- .catch(async (error) => {
37
- console.error(error);
38
- await prisma.$disconnect();
39
- {{#if (eq packageManager "deno")}}
40
- Deno.exit(1);
41
- {{else}}
42
- process.exit(1);
43
- {{/if}}
44
- });
@@ -1,15 +0,0 @@
1
- {{#if (requiresDotenvConfigImport packageManager)}}
2
- import "dotenv/config";
3
- {{/if}}
4
- import { defineConfig, env } from "prisma/config";
5
-
6
- export default defineConfig({
7
- schema: "prisma/schema.prisma",
8
- migrations: {
9
- path: "prisma/migrations",
10
- seed: "{{#if (eq packageManager "deno")}}deno run -A --env-file=.env ./prisma/seed.ts{{else}}{{#if (eq packageManager "bun")}}bun ./prisma/seed.ts{{else}}tsx prisma/seed.ts{{/if}}{{/if}}",
11
- },
12
- datasource: {
13
- url: env("DATABASE_URL"),
14
- },
15
- });
@@ -1,21 +0,0 @@
1
- generator client {
2
- provider = "prisma-client"
3
- output = "../src/generated/prisma"
4
- {{#if (eq packageManager "deno")}}
5
- runtime = "deno"
6
- {{/if}}
7
- }
8
-
9
- datasource db {
10
- provider = "{{provider}}"
11
- }
12
- {{#if (eq schemaPreset "basic")}}
13
-
14
- model User {
15
- id String @id @default(cuid())
16
- email String @unique
17
- name String?
18
- createdAt DateTime @default(now())
19
- updatedAt DateTime @updatedAt
20
- }
21
- {{/if}}
@@ -1,38 +0,0 @@
1
- import prisma from "../src/lib/prisma";
2
-
3
- async function main() {
4
- {{#if (eq schemaPreset "basic")}}
5
- const users = await Promise.all([
6
- prisma.user.upsert({
7
- where: { email: "alice@prisma.io" },
8
- update: { name: "Alice" },
9
- create: {
10
- email: "alice@prisma.io",
11
- name: "Alice",
12
- },
13
- }),
14
- prisma.user.upsert({
15
- where: { email: "bob@prisma.io" },
16
- update: { name: "Bob" },
17
- create: {
18
- email: "bob@prisma.io",
19
- name: "Bob",
20
- },
21
- }),
22
- ]);
23
-
24
- console.log(`Seeded ${users.length} users.`);
25
- {{else}}
26
- console.log("No seed data defined for the empty schema preset.");
27
- {{/if}}
28
- }
29
-
30
- main()
31
- .then(async () => {
32
- await prisma.$disconnect();
33
- })
34
- .catch(async (error) => {
35
- console.error(error);
36
- await prisma.$disconnect();
37
- process.exit(1);
38
- });
@@ -1,13 +0,0 @@
1
- import "dotenv/config";
2
- import { defineConfig, env } from "prisma/config";
3
-
4
- export default defineConfig({
5
- schema: "prisma/schema.prisma",
6
- migrations: {
7
- path: "prisma/migrations",
8
- seed: "tsx prisma/seed.ts",
9
- },
10
- datasource: {
11
- url: env("DATABASE_URL"),
12
- },
13
- });
@@ -1,21 +0,0 @@
1
- generator client {
2
- provider = "prisma-client"
3
- output = "../server/generated/prisma"
4
- {{#if (eq packageManager "deno")}}
5
- runtime = "deno"
6
- {{/if}}
7
- }
8
-
9
- datasource db {
10
- provider = "{{provider}}"
11
- }
12
- {{#if (eq schemaPreset "basic")}}
13
-
14
- model User {
15
- id String @id @default(cuid())
16
- email String @unique
17
- name String?
18
- createdAt DateTime @default(now())
19
- updatedAt DateTime @updatedAt
20
- }
21
- {{/if}}
@@ -1,38 +0,0 @@
1
- import prisma from "../server/utils/prisma";
2
-
3
- async function main() {
4
- {{#if (eq schemaPreset "basic")}}
5
- const users = await Promise.all([
6
- prisma.user.upsert({
7
- where: { email: "alice@prisma.io" },
8
- update: { name: "Alice" },
9
- create: {
10
- email: "alice@prisma.io",
11
- name: "Alice",
12
- },
13
- }),
14
- prisma.user.upsert({
15
- where: { email: "bob@prisma.io" },
16
- update: { name: "Bob" },
17
- create: {
18
- email: "bob@prisma.io",
19
- name: "Bob",
20
- },
21
- }),
22
- ]);
23
-
24
- console.log(`Seeded ${users.length} users.`);
25
- {{else}}
26
- console.log("No seed data defined for the empty schema preset.");
27
- {{/if}}
28
- }
29
-
30
- main()
31
- .then(async () => {
32
- await prisma.$disconnect();
33
- })
34
- .catch(async (error) => {
35
- console.error(error);
36
- await prisma.$disconnect();
37
- process.exit(1);
38
- });
@@ -1,13 +0,0 @@
1
- import "dotenv/config";
2
- import { defineConfig, env } from "prisma/config";
3
-
4
- export default defineConfig({
5
- schema: "prisma/schema.prisma",
6
- migrations: {
7
- path: "prisma/migrations",
8
- seed: "tsx prisma/seed.ts",
9
- },
10
- datasource: {
11
- url: env("DATABASE_URL"),
12
- },
13
- });