summaryrefslogtreecommitdiff
path: root/makima/frontend/src/lib/supabase.ts
diff options
context:
space:
mode:
authorsoryu <soryu@soryu.co>2026-01-06 04:08:11 +0000
committersoryu <soryu@soryu.co>2026-01-11 03:01:13 +0000
commit8b17a175c3e7e27b789812eba4e3cd760beadb10 (patch)
tree7864dcaa2fa9db47fdfd4e8bfdb0b1dde832aa33 /makima/frontend/src/lib/supabase.ts
parentf79c416c58557d2f946aa5332989afdfa8c021cd (diff)
downloadsoryu-8b17a175c3e7e27b789812eba4e3cd760beadb10.tar.gz
soryu-8b17a175c3e7e27b789812eba4e3cd760beadb10.zip
Initial Control system
Diffstat (limited to 'makima/frontend/src/lib/supabase.ts')
-rw-r--r--makima/frontend/src/lib/supabase.ts26
1 files changed, 26 insertions, 0 deletions
diff --git a/makima/frontend/src/lib/supabase.ts b/makima/frontend/src/lib/supabase.ts
new file mode 100644
index 0000000..eedff10
--- /dev/null
+++ b/makima/frontend/src/lib/supabase.ts
@@ -0,0 +1,26 @@
+import { createClient, SupabaseClient, Session, User } from "@supabase/supabase-js";
+
+// Supabase configuration from environment variables
+const SUPABASE_URL = import.meta.env.VITE_SUPABASE_URL as string | undefined;
+const SUPABASE_ANON_KEY = import.meta.env.VITE_SUPABASE_ANON_KEY as string | undefined;
+
+// Only create client if configuration is available
+let supabaseClient: SupabaseClient | null = null;
+
+if (SUPABASE_URL && SUPABASE_ANON_KEY) {
+ supabaseClient = createClient(SUPABASE_URL, SUPABASE_ANON_KEY, {
+ auth: {
+ autoRefreshToken: true,
+ persistSession: true,
+ detectSessionInUrl: true,
+ },
+ });
+}
+
+export const supabase = supabaseClient;
+
+export function isAuthConfigured(): boolean {
+ return supabaseClient !== null;
+}
+
+export type { Session, User };