initial commit

This commit is contained in:
2026-04-03 18:25:54 +01:00
commit 17e26fc87f
35 changed files with 4716 additions and 0 deletions

19
lib/prisma.ts Normal file
View File

@@ -0,0 +1,19 @@
import "dotenv/config";
import { PrismaMariaDb } from '@prisma/adapter-mariadb';
import { PrismaClient } from '../generated/prisma/client';
const globalForPrisma = global as unknown as { prisma: PrismaClient };
// Only create the adapter once
const adapter = new PrismaMariaDb({
host: process.env.DATABASE_HOST,
user: process.env.DATABASE_USER,
password: process.env.DATABASE_PASSWORD,
database: process.env.DATABASE_NAME,
connectionLimit: 5
});
// Use the singleton pattern so Next.js doesn't exhaust your MySQL connections
export const prisma = globalForPrisma.prisma || new PrismaClient({ adapter });
if (process.env.NODE_ENV !== 'production') globalForPrisma.prisma = prisma;

9
lib/uploadthing.ts Normal file
View File

@@ -0,0 +1,9 @@
import {
generateUploadButton,
generateUploadDropzone,
} from "@uploadthing/react";
import type { OurFileRouter } from "../app/api/uploadthing/core";
export const UploadButton = generateUploadButton<OurFileRouter>();
export const UploadDropzone = generateUploadDropzone<OurFileRouter>();