Back to Drizzle Orm

Drizzle Gel

src/content/docs/get-started-gel.mdx

latest1.7 KB
Original Source

import Tab from '@mdx/Tab.astro'; import Tabs from '@mdx/Tabs.astro'; import Npm from "@mdx/Npm.astro"; import Callout from '@mdx/Callout.astro'; import Steps from '@mdx/Steps.astro'; import AnchorCards from '@mdx/AnchorCards.astro'; import Prerequisites from "@mdx/Prerequisites.astro"; import CodeTabs from "@mdx/CodeTabs.astro"; import WhatsNextPostgres from "@mdx/WhatsNextPostgres.astro";

Drizzle <> Gel

<Prerequisites> - Database [connection basics](/docs/connect-overview) with Drizzle - gel-js [basics](https://github.com/geldata/gel-js) </Prerequisites>

Drizzle has native support for Gel connections with the gel-js client.

Step 1 - Install packages

<Npm> drizzle-orm gel -D drizzle-kit </Npm>

Step 2 - Initialize the driver and make a query

<CodeTabs items={["gel", "gel with config"]}>

typescript
// Make sure to install the 'gel' package 
import { drizzle } from 'drizzle-orm/gel';

const db = drizzle(process.env.DATABASE_URL);
 
const result = await db.execute('select 1');
typescript
// Make sure to install the 'gel' package
import { drizzle } from "drizzle-orm/gel";

// You can specify any property from the gel connection options
const db = drizzle({
  connection: {
    dsn: process.env.DATABASE_URL,
    tlsSecurity: "default",
  },
});

const result = await db.execute("select 1");
</CodeTabs>

If you need to provide your existing driver:

typescript
// Make sure to install the 'gel' package 
import { drizzle } from "drizzle-orm/gel";
import { createClient } from "gel";

const gelClient = createClient();
const db = drizzle({ client: gelClient });

const result = await db.execute('select 1');

What's next?

<WhatsNextPostgres/>