Index: server/drizzle/auth-adapter.ts
===================================================================
--- server/drizzle/auth-adapter.ts	(revision 898cf683befadffe8aea07855b58db8cd5082ff9)
+++ server/drizzle/auth-adapter.ts	(revision 898cf683befadffe8aea07855b58db8cd5082ff9)
@@ -0,0 +1,64 @@
+import type { Adapter } from "@auth/core/adapters";
+import { db } from "../../database/drizzle/db";
+import { usersTable, adminsTable } from "../../database/drizzle/schema";
+import { eq } from "drizzle-orm";
+
+export function AuthDrizzleAdapter(): Adapter {
+    return {
+        async getUser(id) {
+            const userId = parseInt(id);
+            if (isNaN(userId)) return null;
+
+            const user = await db.query.usersTable.findFirst({
+                where: eq(usersTable.id, userId),
+            });
+
+            if (!user) return null;
+
+            const admin = await db.query.adminsTable.findFirst({
+                where: eq(adminsTable.userId, user.id),
+            });
+
+            return {
+                id: String(user.id),
+                email: user.email,
+                name: user.username,
+                emailVerified: null,
+                isAdmin: !!admin,
+            };
+        },
+
+        async getUserByEmail(email) {
+            const user = await db.query.usersTable.findFirst({
+                where: eq(usersTable.email, email),
+            });
+
+            if (!user) return null;
+
+            const admin = await db.query.adminsTable.findFirst({
+                where: eq(adminsTable.userId, user.id),
+            });
+
+            return {
+                id: String(user.id),
+                email: user.email,
+                name: user.username,
+                emailVerified: null,
+                isAdmin: !!admin,
+            };
+        },
+
+        async createUser() { return null as any; },
+        async updateUser() { return null as any; },
+        async deleteUser() {},
+        async getUserByAccount() { return null; },
+        async createSession() { return null as any; },
+        async getSessionAndUser() { return null; },
+        async updateSession() { return null; },
+        async deleteSession() {},
+        async linkAccount() { return null as any; },
+        async unlinkAccount() {},
+        async createVerificationToken() { return null as any; },
+        async useVerificationToken() { return null; },
+    };
+}
