add prisma

This commit is contained in:
Benjamin Palko 2024-12-10 10:40:41 -05:00
parent 05a95b72d0
commit a286fa4e0d
11 changed files with 63 additions and 10 deletions

2
.env Normal file
View file

@ -0,0 +1,2 @@
VITE_APP_VERSION=1.0.0-alpha
DATABASE_URL="file:./dev.db"

View file

@ -1 +0,0 @@
VITE_APP_VERSION=1.0.0-alpha

7
.gitignore vendored
View file

@ -13,13 +13,6 @@ node_modules
.DS_Store
Thumbs.db
# Env
.env
.env.*
!.env.example
!.env.test
!.env.development
# Vite
vite.config.js.timestamp-*
vite.config.ts.timestamp-*

BIN
bun.lockb

Binary file not shown.

View file

@ -14,7 +14,8 @@
"test": "npm run test:unit -- --run && npm run test:e2e",
"storybook": "storybook dev -p 6006",
"build-storybook": "storybook build",
"test:e2e": "playwright test"
"test:e2e": "playwright test",
"prisma:generate": "prisma generate"
},
"devDependencies": {
"@chromatic-com/storybook": "^3.2.2",
@ -38,6 +39,7 @@
"prettier": "^3.3.2",
"prettier-plugin-svelte": "^3.2.6",
"prettier-plugin-tailwindcss": "^0.6.5",
"prisma": "^6.0.1",
"storybook": "^8.4.7",
"svelte": "^5.0.0",
"svelte-check": "^4.0.0",
@ -49,6 +51,7 @@
},
"dependencies": {
"@pothos/core": "^4.3.0",
"@prisma/client": "6.0.1",
"@tailwindcss/typography": "^0.5.15",
"@types/bun": "^1.1.14",
"graphql": "^16.9.0",

BIN
prisma/dev.db Normal file

Binary file not shown.

BIN
prisma/dev.db-journal Normal file

Binary file not shown.

View file

@ -0,0 +1,19 @@
-- CreateTable
CREATE TABLE "User" (
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
"email" TEXT NOT NULL,
"name" TEXT
);
-- CreateTable
CREATE TABLE "Post" (
"id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
"title" TEXT NOT NULL,
"content" TEXT,
"published" BOOLEAN NOT NULL DEFAULT false,
"authorId" INTEGER NOT NULL,
CONSTRAINT "Post_authorId_fkey" FOREIGN KEY ("authorId") REFERENCES "User" ("id") ON DELETE RESTRICT ON UPDATE CASCADE
);
-- CreateIndex
CREATE UNIQUE INDEX "User_email_key" ON "User"("email");

View file

@ -0,0 +1,3 @@
# Please do not edit this file manually
# It should be added in your version-control system (i.e. Git)
provider = "sqlite"

31
prisma/schema.prisma Normal file
View file

@ -0,0 +1,31 @@
// This is your Prisma schema file,
// learn more about it in the docs: https://pris.ly/d/prisma-schema
generator client {
provider = "prisma-client-js"
}
generator pothos {
provider = "prisma-pothos-types"
}
datasource db {
provider = "sqlite"
url = env("DATABASE_URL")
}
model User {
id Int @id @default(autoincrement())
email String @unique
name String?
posts Post[]
}
model Post {
id Int @id @default(autoincrement())
title String
content String?
published Boolean @default(false)
author User @relation(fields: [authorId], references: [id])
authorId Int
}

3
src/lib/prisma/index.ts Normal file
View file

@ -0,0 +1,3 @@
import { PrismaClient } from '@prisma/client';
export const prisma = new PrismaClient();