Marketplace inversée (Next.js 16 App Router + Supabase Cloud) : auth, schéma + RLS, publication de besoins avec upload d'images, feed avec filtres, offres, acceptation via RPC, messagerie temps réel, dashboards, et Dockerfile pour déploiement Coolify.
20 lines
639 B
TypeScript
20 lines
639 B
TypeScript
import "server-only";
|
|
import { createClient as createSupabaseClient } from "@supabase/supabase-js";
|
|
import type { Database } from "@/lib/database.types";
|
|
|
|
// Uses the service role key — bypasses RLS entirely. Only import this from
|
|
// trusted server-only code (e.g. the signup trigger fallback, admin tooling).
|
|
// Never expose this client or its key to the browser.
|
|
export function createAdminClient() {
|
|
return createSupabaseClient<Database>(
|
|
process.env.NEXT_PUBLIC_SUPABASE_URL!,
|
|
process.env.SUPABASE_SERVICE_ROLE_KEY!,
|
|
{
|
|
auth: {
|
|
autoRefreshToken: false,
|
|
persistSession: false,
|
|
},
|
|
}
|
|
);
|
|
}
|