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