Services

Database

An Effect service that provides a Drizzle PostgreSQL client from DATABASE_URL with pg type parsing configured for application-safe date and interval handling.

Install
Add this registry item to your app with shadcn.
bunx --bun shadcn@latest add https://krakstack.net/r/service-database.json

Overview

service-database provides a Drizzle PostgreSQL client as an Effect service. It reads DATABASE_URL, configures pg type parsing for date and interval types, and exposes a reusable layer for application programs.

Usage

import { Effect } from "effect";
import { DB } from "@/services/database";
import { users } from "@/db/schema";

const program = Effect.gen(function* () {
  const db = yield* DB;
  return yield* db.select().from(users);
});

const usersList = await Effect.runPromise(
  program.pipe(Effect.provide(DB.layer)),
);
Dependencies
Packages and shadcn components required by this registry item.