diff --git a/package-lock.json b/package-lock.json index 5334538..4193c1c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "name": "full-stack-development-with-sveltekit", "version": "0.0.1", "dependencies": { + "@prisma/client": "^4.5.0", "daisyui": "^2.31.0", "svelte-material-icons": "^2.0.4" }, @@ -16,6 +17,7 @@ "@sveltejs/kit": "next", "autoprefixer": "^10.4.12", "postcss": "^8.4.18", + "prisma": "^4.5.0", "svelte": "^3.44.0", "svelte-check": "^2.7.1", "svelte-preprocess": "^4.10.7", @@ -152,6 +154,38 @@ "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==", "dev": true }, + "node_modules/@prisma/client": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/@prisma/client/-/client-4.5.0.tgz", + "integrity": "sha512-B2cV0OPI1smhdYUxsJoLYQLoMlLH06MUxgFUWQnHodGMX98VRVXKmQE/9OcrTNkqtke5RC+YU24Szxd04tZA2g==", + "hasInstallScript": true, + "dependencies": { + "@prisma/engines-version": "4.5.0-43.0362da9eebca54d94c8ef5edd3b2e90af99ba452" + }, + "engines": { + "node": ">=14.17" + }, + "peerDependencies": { + "prisma": "*" + }, + "peerDependenciesMeta": { + "prisma": { + "optional": true + } + } + }, + "node_modules/@prisma/engines": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/@prisma/engines/-/engines-4.5.0.tgz", + "integrity": "sha512-4t9ir2SbQQr/wMCNU4YpHWp5hU14J2m3wHUZnGJPpmBF8YtkisxyVyQsKd1e6FyLTaGq8LOLhm6VLYHKqKNm+g==", + "devOptional": true, + "hasInstallScript": true + }, + "node_modules/@prisma/engines-version": { + "version": "4.5.0-43.0362da9eebca54d94c8ef5edd3b2e90af99ba452", + "resolved": "https://registry.npmjs.org/@prisma/engines-version/-/engines-version-4.5.0-43.0362da9eebca54d94c8ef5edd3b2e90af99ba452.tgz", + "integrity": "sha512-o7LyVx8PPJBLrEzLl6lpxxk2D5VnlM4Fwmrbq0NoT6pr5aa1OuHD9ZG+WJY6TlR/iD9bhmo2LNcxddCMr5Rv2A==" + }, "node_modules/@rollup/pluginutils": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", @@ -1965,6 +1999,23 @@ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" }, + "node_modules/prisma": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/prisma/-/prisma-4.5.0.tgz", + "integrity": "sha512-9Aeg4qiKlv9Wsjz4NO8k2CzRzlvS3A4FYVJ5+28sBBZ0eEwbiVOE/Jj7v6rZC1tFW2s4GSICQOAyuOjc6WsNew==", + "devOptional": true, + "hasInstallScript": true, + "dependencies": { + "@prisma/engines": "4.5.0" + }, + "bin": { + "prisma": "build/index.js", + "prisma2": "build/index.js" + }, + "engines": { + "node": ">=14.17" + } + }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -2849,6 +2900,25 @@ "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==", "dev": true }, + "@prisma/client": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/@prisma/client/-/client-4.5.0.tgz", + "integrity": "sha512-B2cV0OPI1smhdYUxsJoLYQLoMlLH06MUxgFUWQnHodGMX98VRVXKmQE/9OcrTNkqtke5RC+YU24Szxd04tZA2g==", + "requires": { + "@prisma/engines-version": "4.5.0-43.0362da9eebca54d94c8ef5edd3b2e90af99ba452" + } + }, + "@prisma/engines": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/@prisma/engines/-/engines-4.5.0.tgz", + "integrity": "sha512-4t9ir2SbQQr/wMCNU4YpHWp5hU14J2m3wHUZnGJPpmBF8YtkisxyVyQsKd1e6FyLTaGq8LOLhm6VLYHKqKNm+g==", + "devOptional": true + }, + "@prisma/engines-version": { + "version": "4.5.0-43.0362da9eebca54d94c8ef5edd3b2e90af99ba452", + "resolved": "https://registry.npmjs.org/@prisma/engines-version/-/engines-version-4.5.0-43.0362da9eebca54d94c8ef5edd3b2e90af99ba452.tgz", + "integrity": "sha512-o7LyVx8PPJBLrEzLl6lpxxk2D5VnlM4Fwmrbq0NoT6pr5aa1OuHD9ZG+WJY6TlR/iD9bhmo2LNcxddCMr5Rv2A==" + }, "@rollup/pluginutils": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz", @@ -4055,6 +4125,15 @@ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" }, + "prisma": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/prisma/-/prisma-4.5.0.tgz", + "integrity": "sha512-9Aeg4qiKlv9Wsjz4NO8k2CzRzlvS3A4FYVJ5+28sBBZ0eEwbiVOE/Jj7v6rZC1tFW2s4GSICQOAyuOjc6WsNew==", + "devOptional": true, + "requires": { + "@prisma/engines": "4.5.0" + } + }, "queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", diff --git a/package.json b/package.json index 8324a0f..0b04f2c 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,7 @@ "version": "0.0.1", "private": true, "scripts": { + "predev":"prisma migrate dev", "dev": "vite dev", "build": "vite build", "preview": "vite preview", @@ -14,6 +15,7 @@ "@sveltejs/kit": "next", "autoprefixer": "^10.4.12", "postcss": "^8.4.18", + "prisma": "^4.5.0", "svelte": "^3.44.0", "svelte-check": "^2.7.1", "svelte-preprocess": "^4.10.7", @@ -24,6 +26,7 @@ }, "type": "module", "dependencies": { + "@prisma/client": "^4.5.0", "daisyui": "^2.31.0", "svelte-material-icons": "^2.0.4" } diff --git a/prisma/migrations/20221022172752_init/migration.sql b/prisma/migrations/20221022172752_init/migration.sql new file mode 100644 index 0000000..a3205d8 --- /dev/null +++ b/prisma/migrations/20221022172752_init/migration.sql @@ -0,0 +1,8 @@ +-- CreateTable +CREATE TABLE "Todo" ( + "id" TEXT NOT NULL, + "text" TEXT NOT NULL, + "completed" BOOLEAN NOT NULL, + + CONSTRAINT "Todo_pkey" PRIMARY KEY ("id") +); diff --git a/prisma/migrations/migration_lock.toml b/prisma/migrations/migration_lock.toml new file mode 100644 index 0000000..fbffa92 --- /dev/null +++ b/prisma/migrations/migration_lock.toml @@ -0,0 +1,3 @@ +# Please do not edit this file manually +# It should be added in your version-control system (i.e. Git) +provider = "postgresql" \ No newline at end of file diff --git a/prisma/schema.prisma b/prisma/schema.prisma new file mode 100644 index 0000000..5e40ffb --- /dev/null +++ b/prisma/schema.prisma @@ -0,0 +1,15 @@ +datasource db { + provider = "postgresql" + url = env("DATABASE_URL") +} + +generator client { + provider = "prisma-client-js" + binaryTargets = ["native"] +} + +model Todo { + id String @id @default(cuid()) + text String + completed Boolean +}