diff --git a/Dockerfile b/Dockerfile
index 3439145..9cd4ced 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -3,29 +3,32 @@ FROM node:lts-alpine AS base
WORKDIR /usr/src/app
FROM base AS install
+RUN mkdir -p /temp/dev
+COPY package.json package-lock.json /temp/dev/
+RUN cd /temp/dev && yarn install
-RUN mkdir dev
-COPY package.json dev/
-COPY yarn.lock dev/
-RUN cd /usr/src/app/dev && yarn install
+RUN mkdir -p /temp/prod
+COPY package.json package-lock.json /temp/prod/
+RUN cd /temp/prod && yarn install --omit=dev
-RUN mkdir prod
-COPY package.json prod/
-COPY yarn.lock prod/
-RUN cd /usr/src/app/prod && yarn install --production
-
-FROM base AS build
-
-COPY --from=install /usr/src/app/dev/node_modules node_modules
+FROM base AS prisma
+COPY --from=install /temp/prod/node_modules node_modules
COPY . .
-RUN yarn build
+RUN npx prisma generate
-FROM base AS app
+FROM base AS prerelease
+COPY --from=install /temp/dev/node_modules node_modules
+COPY . .
-COPY --from=install /usr/src/app/prod/node_modules node_modules
-COPY --from=build /usr/src/app/package.json .
-COPY --from=build /usr/src/app/build/ .
+RUN npx prisma generate
+RUN npm run build
+
+FROM base AS release
+COPY --from=prisma /usr/src/app/prisma prisma
+COPY --from=prisma /usr/src/app/node_modules node_modules
+COPY --from=prerelease /usr/src/app/build/ ./
+COPY --from=prerelease /usr/src/app/package.json .
EXPOSE 3000/tcp
CMD [ "node", "index.js" ]
\ No newline at end of file
diff --git a/package.json b/package.json
index 3d372e3..58c6b5b 100644
--- a/package.json
+++ b/package.json
@@ -17,6 +17,7 @@
"postcss": "^8.4.35",
"prettier": "^3.1.1",
"prettier-plugin-svelte": "^3.1.2",
+ "prisma": "^5.11.0",
"svelte": "^4.2.7",
"tailwindcss": "^3.4.1",
"vite": "^5.0.3"
diff --git a/prisma/schema.prisma b/prisma/schema.prisma
new file mode 100644
index 0000000..fa88fe6
--- /dev/null
+++ b/prisma/schema.prisma
@@ -0,0 +1,8 @@
+datasource db {
+ provider = "mysql"
+ url = env("DATABASE_URL")
+}
+
+generator client {
+ provider = "prisma-client-js"
+}
diff --git a/src/hooks.client.js b/src/hooks.client.js
deleted file mode 100644
index e69de29..0000000
diff --git a/src/lib/components/LoggedOut.svelte b/src/lib/components/LoggedOut.svelte
index 11927e2..a970e31 100644
--- a/src/lib/components/LoggedOut.svelte
+++ b/src/lib/components/LoggedOut.svelte
@@ -20,7 +20,7 @@
Currently hosting 0 files.
- Elon musk found dead in a pool
+ The best file uploader ever!!!
diff --git a/src/lib/server/database.js b/src/lib/server/database.js
new file mode 100644
index 0000000..736f146
--- /dev/null
+++ b/src/lib/server/database.js
@@ -0,0 +1,4 @@
+import { PrismaClient } from '@prisma/client';
+
+const prisma = new PrismaClient();
+export default prisma;
diff --git a/yarn.lock b/yarn.lock
index 7733bad..c24b7b2 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -205,6 +205,42 @@
resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.25.tgz#f077fdc0b5d0078d30893396ff4827a13f99e817"
integrity sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ==
+"@prisma/debug@5.11.0":
+ version "5.11.0"
+ resolved "https://registry.yarnpkg.com/@prisma/debug/-/debug-5.11.0.tgz#80e3f9d5a8f678c67a8783f7fcdda3cbbb8dd091"
+ integrity sha512-N6yYr3AbQqaiUg+OgjkdPp3KPW1vMTAgtKX6+BiB/qB2i1TjLYCrweKcUjzOoRM5BriA4idrkTej9A9QqTfl3A==
+
+"@prisma/engines-version@5.11.0-15.efd2449663b3d73d637ea1fd226bafbcf45b3102":
+ version "5.11.0-15.efd2449663b3d73d637ea1fd226bafbcf45b3102"
+ resolved "https://registry.yarnpkg.com/@prisma/engines-version/-/engines-version-5.11.0-15.efd2449663b3d73d637ea1fd226bafbcf45b3102.tgz#a7aa218b1ebf1077798c931632461aae8ce6a8f7"
+ integrity sha512-WXCuyoymvrS4zLz4wQagSsc3/nE6CHy8znyiMv8RKazKymOMd5o9FP5RGwGHAtgoxd+aB/BWqxuP/Ckfu7/3MA==
+
+"@prisma/engines@5.11.0":
+ version "5.11.0"
+ resolved "https://registry.yarnpkg.com/@prisma/engines/-/engines-5.11.0.tgz#96e941c5c81ce68f3a8b4c481007d397564c5d4b"
+ integrity sha512-gbrpQoBTYWXDRqD+iTYMirDlF9MMlQdxskQXbhARhG6A/uFQjB7DZMYocMQLoiZXO/IskfDOZpPoZE8TBQKtEw==
+ dependencies:
+ "@prisma/debug" "5.11.0"
+ "@prisma/engines-version" "5.11.0-15.efd2449663b3d73d637ea1fd226bafbcf45b3102"
+ "@prisma/fetch-engine" "5.11.0"
+ "@prisma/get-platform" "5.11.0"
+
+"@prisma/fetch-engine@5.11.0":
+ version "5.11.0"
+ resolved "https://registry.yarnpkg.com/@prisma/fetch-engine/-/fetch-engine-5.11.0.tgz#cd7a2fa5b5d89f1da0689e329c56fa69223fba7d"
+ integrity sha512-994viazmHTJ1ymzvWugXod7dZ42T2ROeFuH6zHPcUfp/69+6cl5r9u3NFb6bW8lLdNjwLYEVPeu3hWzxpZeC0w==
+ dependencies:
+ "@prisma/debug" "5.11.0"
+ "@prisma/engines-version" "5.11.0-15.efd2449663b3d73d637ea1fd226bafbcf45b3102"
+ "@prisma/get-platform" "5.11.0"
+
+"@prisma/get-platform@5.11.0":
+ version "5.11.0"
+ resolved "https://registry.yarnpkg.com/@prisma/get-platform/-/get-platform-5.11.0.tgz#19a768127b1712c27f5dec8a0a79a4c9675829eb"
+ integrity sha512-rxtHpMLxNTHxqWuGOLzR2QOyQi79rK1u1XYAVLZxDGTLz/A+uoDnjz9veBFlicrpWjwuieM4N6jcnjj/DDoidw==
+ dependencies:
+ "@prisma/debug" "5.11.0"
+
"@rollup/plugin-commonjs@^25.0.7":
version "25.0.7"
resolved "https://registry.yarnpkg.com/@rollup/plugin-commonjs/-/plugin-commonjs-25.0.7.tgz#145cec7589ad952171aeb6a585bbeabd0fd3b4cf"
@@ -1126,6 +1162,13 @@ prettier@^3.1.1:
resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.2.5.tgz#e52bc3090586e824964a8813b09aba6233b28368"
integrity sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==
+prisma@^5.11.0:
+ version "5.11.0"
+ resolved "https://registry.yarnpkg.com/prisma/-/prisma-5.11.0.tgz#ef3891f79921a2deec6f540eba13a3cc8525f6d2"
+ integrity sha512-KCLiug2cs0Je7kGkQBN9jDWoZ90ogE/kvZTUTgz2h94FEo8pczCkPH7fPNXkD1sGU7Yh65risGGD1HQ5DF3r3g==
+ dependencies:
+ "@prisma/engines" "5.11.0"
+
queue-microtask@^1.2.2:
version "1.2.3"
resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"