Skip to content

Commit a784e77

Browse files
sreeisalsogioboa
andauthored
fix(starters): improve drizzle integration (#7288)
--------- Co-authored-by: gioboa <giorgiob.boa@gmail.com>
1 parent bbee094 commit a784e77

File tree

4 files changed

+30
-33
lines changed

4 files changed

+30
-33
lines changed

.changeset/forty-bats-rule.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@builder.io/qwik': patch
3+
---
4+
5+
updated drizzle to latest version
Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
import type { Config } from "drizzle-kit";
2-
export default {
1+
import { defineConfig } from "drizzle-kit";
2+
3+
export default defineConfig({
4+
dialect: "sqlite",
35
schema: "./drizzle/schema.ts",
46
out: "./drizzle/migrations/",
5-
driver: "better-sqlite",
67
dbCredentials: {
78
url: "./drizzle/db/db.sqlite",
89
},
9-
} satisfies Config;
10+
});

starters/features/drizzle/drizzle/schema.ts

Lines changed: 6 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,10 @@
1-
// // This is your drizzle schema file.
1+
import { sqliteTable as table } from "drizzle-orm/sqlite-core";
2+
import * as t from "drizzle-orm/sqlite-core";
23

3-
// import { pgTable, serial, text, timestamp } from "drizzle-orm/pg-core";
4-
5-
// export const users = pgTable("users", {
6-
// id: serial("id").primaryKey(),
7-
// name: text("name").default("not_provided"),
8-
// email: text("email").notNull(),
9-
// });
10-
11-
// export const schema = {
12-
// users,
13-
// };
14-
import { sqliteTable, integer, text } from "drizzle-orm/sqlite-core";
15-
16-
export const users = sqliteTable("users", {
17-
id: integer("id", { mode: "number" }).primaryKey({ autoIncrement: true }),
18-
name: text("name").default("not_provided"),
19-
email: text("email").notNull(),
4+
export const users = table("users", {
5+
id: t.int({ mode: "number" }).primaryKey({ autoIncrement: true }),
6+
name: t.text().default("not_provided"),
7+
email: t.text().notNull(),
208
});
219

2210
export const schema = {

starters/features/drizzle/package.json

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,14 @@
55
"priority": -10,
66
"viteConfig": {},
77
"docs": [
8-
"https://qwik.dev/integrations/integration/drizzle/",
8+
"https://qwik.dev/integrations/drizzle/",
99
"https://orm.drizzle.team/docs/overview"
1010
],
1111
"nextSteps": {
1212
"title": "Next Steps",
1313
"lines": [
1414
" Drizzle was installed with a simple DB schema and some demo routes,",
15+
" now you need to run `npm run drizzle:migrate` to setup the database.",
1516
"",
1617
" better-sqlite3 was configured by default, but in production",
1718
" you'll want to use Postgres or MySQL.",
@@ -26,17 +27,19 @@
2627
"alwaysInRoot": []
2728
},
2829
"devDependencies": {
29-
"@types/better-sqlite3": "^7.6.9",
30-
"drizzle-kit": "^0.20.14"
31-
},
32-
"dependencies": {
33-
"better-sqlite3": "^9.4.3",
34-
"drizzle-orm": "^0.29.4"
30+
"@types/better-sqlite3": "^7.6.12",
31+
"drizzle-kit": "^0.30.3",
32+
"better-sqlite3": "^11.8.1",
33+
"drizzle-orm": "^0.39.0"
3534
},
3635
"scripts": {
37-
"postinstall": "drizzle-kit generate:sqlite",
38-
"drizzle:generate": "drizzle-kit generate:sqlite",
39-
"drizzle:migrate": "drizzle-kit push:sqlite",
40-
"drizzle:studio": "drizzle-kit studio --host 127.0.0.1"
36+
"drizzle:generate": "drizzle-kit generate",
37+
"drizzle:migrate": "drizzle-kit migrate",
38+
"drizzle:push": "drizzle-kit push",
39+
"drizzle:pull": "drizzle-kit pull",
40+
"drizzle:check": "drizzle-kit check",
41+
"drizzle:up": "drizzle-kit up",
42+
"drizzle:studio": "drizzle-kit studio",
43+
"postinstall": "drizzle-kit generate"
4144
}
4245
}

0 commit comments

Comments
 (0)