Supabase Server Client Factory (supabase/create-server-client.ts)

giselle · integration, Integration / API, supabase, server, ssr, auth

Validates required environment variables and creates a Supabase client for server‑side operations with cookie handling.

// Source: https://github.com/mperkins0155/giselle | License: Apache-2.0 | Copyright 2024 ROUTE06, Inc
// Provided via justclaw.it.com; keep this notice with the code.
import {
	type CookieMethodsServer,
	createServerClient as createSupabaseServerClient,
} from "@supabase/ssr";
import invariant from "tiny-invariant";

type CreateServerClientArgs = {
	cookies: CookieMethodsServer;
};
export const createServerClient = ({ cookies }: CreateServerClientArgs) => {
	invariant(
		process.env.NEXT_PUBLIC_SUPABASE_URL != null,
		"Missing env.NEXT_PUBLIC_SUPABASE_URL",
	);
	invariant(
		process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY != null,
		"Missing env.NEXT_PUBLIC_SUPABASE_ANON_KEY",
	);
	const supabase = createSupabaseServerClient(
		process.env.NEXT_PUBLIC_SUPABASE_URL,
		process.env.NEXT_PUBLIC_SUP

... (truncated -- full source via MCP)

See the full source, get the GitHub permalink, and search 40K more like it.

Get a free API key