aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--backend/package-lock.json85
-rw-r--r--backend/package.json5
-rw-r--r--backend/prisma/schema.prisma15
-rw-r--r--backend/prisma/seed.ts21
-rw-r--r--backend/schema.prisma15
5 files changed, 86 insertions, 55 deletions
diff --git a/backend/package-lock.json b/backend/package-lock.json
index 6afd91e..92cdd5c 100644
--- a/backend/package-lock.json
+++ b/backend/package-lock.json
@@ -9,7 +9,7 @@
"version": "1.0.0",
"license": "ISC",
"dependencies": {
- "@prisma/client": "^6.9.0",
+ "@prisma/client": "^6.10.1",
"@types/bcrypt": "^5.0.2",
"@types/cookie-parser": "^1.4.9",
"@types/express-session": "^1.18.2",
@@ -27,7 +27,7 @@
"@types/express": "^4.17.23",
"@types/node": "^24.0.3",
"@types/sqlite3": "^5.1.0",
- "prisma": "^6.9.0",
+ "prisma": "^6.10.1",
"ts-node-dev": "^2.0.0",
"typescript": "^5.8.3"
}
@@ -100,10 +100,11 @@
}
},
"node_modules/@prisma/client": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@prisma/client/-/client-6.9.0.tgz",
- "integrity": "sha512-Gg7j1hwy3SgF1KHrh0PZsYvAaykeR0PaxusnLXydehS96voYCGt1U5zVR31NIouYc63hWzidcrir1a7AIyCsNQ==",
+ "version": "6.10.1",
+ "resolved": "https://registry.npmjs.org/@prisma/client/-/client-6.10.1.tgz",
+ "integrity": "sha512-Re4pMlcUsQsUTAYMK7EJ4Bw2kg3WfZAAlr8GjORJaK4VOP6LxRQUQ1TuLnxcF42XqGkWQ36q5CQF1yVadANQ6w==",
"hasInstallScript": true,
+ "license": "Apache-2.0",
"engines": {
"node": ">=18.18"
},
@@ -121,57 +122,63 @@
}
},
"node_modules/@prisma/config": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@prisma/config/-/config-6.9.0.tgz",
- "integrity": "sha512-Wcfk8/lN3WRJd5w4jmNQkUwhUw0eksaU/+BlAJwPQKW10k0h0LC9PD/6TQFmqKVbHQL0vG2z266r0S1MPzzhbA==",
+ "version": "6.10.1",
+ "resolved": "https://registry.npmjs.org/@prisma/config/-/config-6.10.1.tgz",
+ "integrity": "sha512-kz4/bnqrOrzWo8KzYguN0cden4CzLJJ+2VSpKtF8utHS3l1JS0Lhv6BLwpOX6X9yNreTbZQZwewb+/BMPDCIYQ==",
"devOptional": true,
+ "license": "Apache-2.0",
"dependencies": {
"jiti": "2.4.2"
}
},
"node_modules/@prisma/debug": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@prisma/debug/-/debug-6.9.0.tgz",
- "integrity": "sha512-bFeur/qi/Q+Mqk4JdQ3R38upSYPebv5aOyD1RKywVD+rAMLtRkmTFn28ZuTtVOnZHEdtxnNOCH+bPIeSGz1+Fg==",
- "devOptional": true
+ "version": "6.10.1",
+ "resolved": "https://registry.npmjs.org/@prisma/debug/-/debug-6.10.1.tgz",
+ "integrity": "sha512-k2YT53cWxv9OLjW4zSYTZ6Z7j0gPfCzcr2Mj99qsuvlxr8WAKSZ2NcSR0zLf/mP4oxnYG842IMj3utTgcd7CaA==",
+ "devOptional": true,
+ "license": "Apache-2.0"
},
"node_modules/@prisma/engines": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@prisma/engines/-/engines-6.9.0.tgz",
- "integrity": "sha512-im0X0bwDLA0244CDf8fuvnLuCQcBBdAGgr+ByvGfQY9wWl6EA+kRGwVk8ZIpG65rnlOwtaWIr/ZcEU5pNVvq9g==",
+ "version": "6.10.1",
+ "resolved": "https://registry.npmjs.org/@prisma/engines/-/engines-6.10.1.tgz",
+ "integrity": "sha512-Q07P5rS2iPwk2IQr/rUQJ42tHjpPyFcbiH7PXZlV81Ryr9NYIgdxcUrwgVOWVm5T7ap02C0dNd1dpnNcSWig8A==",
"devOptional": true,
"hasInstallScript": true,
+ "license": "Apache-2.0",
"dependencies": {
- "@prisma/debug": "6.9.0",
- "@prisma/engines-version": "6.9.0-10.81e4af48011447c3cc503a190e86995b66d2a28e",
- "@prisma/fetch-engine": "6.9.0",
- "@prisma/get-platform": "6.9.0"
+ "@prisma/debug": "6.10.1",
+ "@prisma/engines-version": "6.10.1-1.9b628578b3b7cae625e8c927178f15a170e74a9c",
+ "@prisma/fetch-engine": "6.10.1",
+ "@prisma/get-platform": "6.10.1"
}
},
"node_modules/@prisma/engines-version": {
- "version": "6.9.0-10.81e4af48011447c3cc503a190e86995b66d2a28e",
- "resolved": "https://registry.npmjs.org/@prisma/engines-version/-/engines-version-6.9.0-10.81e4af48011447c3cc503a190e86995b66d2a28e.tgz",
- "integrity": "sha512-Qp9gMoBHgqhKlrvumZWujmuD7q4DV/gooEyPCLtbkc13EZdSz2RsGUJ5mHb3RJgAbk+dm6XenqG7obJEhXcJ6Q==",
- "devOptional": true
+ "version": "6.10.1-1.9b628578b3b7cae625e8c927178f15a170e74a9c",
+ "resolved": "https://registry.npmjs.org/@prisma/engines-version/-/engines-version-6.10.1-1.9b628578b3b7cae625e8c927178f15a170e74a9c.tgz",
+ "integrity": "sha512-ZJFTsEqapiTYVzXya6TUKYDFnSWCNegfUiG5ik9fleQva5Sk3DNyyUi7X1+0ZxWFHwHDr6BZV5Vm+iwP+LlciA==",
+ "devOptional": true,
+ "license": "Apache-2.0"
},
"node_modules/@prisma/fetch-engine": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@prisma/fetch-engine/-/fetch-engine-6.9.0.tgz",
- "integrity": "sha512-PMKhJdl4fOdeE3J3NkcWZ+tf3W6rx3ht/rLU8w4SXFRcLhd5+3VcqY4Kslpdm8osca4ej3gTfB3+cSk5pGxgFg==",
+ "version": "6.10.1",
+ "resolved": "https://registry.npmjs.org/@prisma/fetch-engine/-/fetch-engine-6.10.1.tgz",
+ "integrity": "sha512-clmbG/Jgmrc/n6Y77QcBmAUlq9LrwI9Dbgy4pq5jeEARBpRCWJDJ7PWW1P8p0LfFU0i5fsyO7FqRzRB8mkdS4g==",
"devOptional": true,
+ "license": "Apache-2.0",
"dependencies": {
- "@prisma/debug": "6.9.0",
- "@prisma/engines-version": "6.9.0-10.81e4af48011447c3cc503a190e86995b66d2a28e",
- "@prisma/get-platform": "6.9.0"
+ "@prisma/debug": "6.10.1",
+ "@prisma/engines-version": "6.10.1-1.9b628578b3b7cae625e8c927178f15a170e74a9c",
+ "@prisma/get-platform": "6.10.1"
}
},
"node_modules/@prisma/get-platform": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/@prisma/get-platform/-/get-platform-6.9.0.tgz",
- "integrity": "sha512-/B4n+5V1LI/1JQcHp+sUpyRT1bBgZVPHbsC4lt4/19Xp4jvNIVcq5KYNtQDk5e/ukTSjo9PZVAxxy9ieFtlpTQ==",
+ "version": "6.10.1",
+ "resolved": "https://registry.npmjs.org/@prisma/get-platform/-/get-platform-6.10.1.tgz",
+ "integrity": "sha512-4CY5ndKylcsce9Mv+VWp5obbR2/86SHOLVV053pwIkhVtT9C9A83yqiqI/5kJM9T1v1u1qco/bYjDKycmei9HA==",
"devOptional": true,
+ "license": "Apache-2.0",
"dependencies": {
- "@prisma/debug": "6.9.0"
+ "@prisma/debug": "6.10.1"
}
},
"node_modules/@tootallnate/once": {
@@ -1729,6 +1736,7 @@
"resolved": "https://registry.npmjs.org/jiti/-/jiti-2.4.2.tgz",
"integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==",
"devOptional": true,
+ "license": "MIT",
"bin": {
"jiti": "lib/jiti-cli.mjs"
}
@@ -2277,14 +2285,15 @@
}
},
"node_modules/prisma": {
- "version": "6.9.0",
- "resolved": "https://registry.npmjs.org/prisma/-/prisma-6.9.0.tgz",
- "integrity": "sha512-resJAwMyZREC/I40LF6FZ6rZTnlrlrYrb63oW37Gq+U+9xHwbyMSPJjKtM7VZf3gTO86t/Oyz+YeSXr3CmAY1Q==",
+ "version": "6.10.1",
+ "resolved": "https://registry.npmjs.org/prisma/-/prisma-6.10.1.tgz",
+ "integrity": "sha512-khhlC/G49E4+uyA3T3H5PRBut486HD2bDqE2+rvkU0pwk9IAqGFacLFUyIx9Uw+W2eCtf6XGwsp+/strUwMNPw==",
"devOptional": true,
"hasInstallScript": true,
+ "license": "Apache-2.0",
"dependencies": {
- "@prisma/config": "6.9.0",
- "@prisma/engines": "6.9.0"
+ "@prisma/config": "6.10.1",
+ "@prisma/engines": "6.10.1"
},
"bin": {
"prisma": "build/index.js"
diff --git a/backend/package.json b/backend/package.json
index 70d2aac..4686f00 100644
--- a/backend/package.json
+++ b/backend/package.json
@@ -5,13 +5,14 @@
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
+ "seed": "ts-node prisma/seed.ts",
"dev": "ts-node-dev src/index.ts"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
- "@prisma/client": "^6.9.0",
+ "@prisma/client": "^6.10.1",
"@types/bcrypt": "^5.0.2",
"@types/cookie-parser": "^1.4.9",
"@types/express-session": "^1.18.2",
@@ -29,7 +30,7 @@
"@types/express": "^4.17.23",
"@types/node": "^24.0.3",
"@types/sqlite3": "^5.1.0",
- "prisma": "^6.9.0",
+ "prisma": "^6.10.1",
"ts-node-dev": "^2.0.0",
"typescript": "^5.8.3"
}
diff --git a/backend/prisma/schema.prisma b/backend/prisma/schema.prisma
deleted file mode 100644
index aaeee1b..0000000
--- a/backend/prisma/schema.prisma
+++ /dev/null
@@ -1,15 +0,0 @@
-// This is your Prisma schema file,
-// learn more about it in the docs: https://pris.ly/d/prisma-schema
-
-// Looking for ways to speed up your queries, or scale easily with your serverless or edge functions?
-// Try Prisma Accelerate: https://pris.ly/cli/accelerate-init
-
-generator client {
- provider = "prisma-client-js"
- output = "../src/generated/prisma"
-}
-
-datasource db {
- provider = "postgresql"
- url = env("DATABASE_URL")
-}
diff --git a/backend/prisma/seed.ts b/backend/prisma/seed.ts
new file mode 100644
index 0000000..9f98e81
--- /dev/null
+++ b/backend/prisma/seed.ts
@@ -0,0 +1,21 @@
+import { PrismaClient } from '@prisma/client';
+
+const prisma = new PrismaClient();
+
+async function main() {
+ await prisma.games.createMany({
+ data: [
+ { gameName: 'Dancerush' },
+ ],
+ });
+ console.log('Initial seed data inserted');
+}
+
+main()
+ .catch((e) => {
+ console.error(e);
+ process.exit(1);
+ })
+ .finally(async () => {
+ await prisma.$disconnect();
+ });
diff --git a/backend/schema.prisma b/backend/schema.prisma
index e5c4039..d3c0588 100644
--- a/backend/schema.prisma
+++ b/backend/schema.prisma
@@ -23,3 +23,18 @@ model Session {
createdAt DateTime @default(now())
expiresAt DateTime
}
+
+model Game {
+ id Int @id @default(autoincrement())
+ name String @unique
+ scores Score[]
+}
+
+model Score {
+ id Int @id @default(autoincrement())
+ gameId Int
+ userId Int
+ data Json // arbitrary data in json format
+ game Game @relation(fields: [gameId], references: [id])
+ user User @relation(fields: [userId], references: [id])
+}
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage