Scheduled upgrade in progress. Some pages may load slowly or ask you to retry.

Database & ORM

Interaction with NeonDB Postgres using Drizzle ORM.

majiayu000 57d2a7a 2 files · 1.8 KB Updated 567 repo stars

File contents

Database Logic

Stack

  • Database: Neon (Serverless Postgres)
  • ORM: Drizzle ORM
  • Driver: @neondatabase/serverless

Connection

The database connection is initialized in db/index.ts.

import { neon } from '@neondatabase/serverless';
import { drizzle } from 'drizzle-orm/neon-http';

const sql = neon(process.env.DATABASE_URL!);
export const db = drizzle(sql);

Schema

Schema definitions are in db/schema.ts.

  • users, sessions, accounts, verifications: Auth tables.
  • analyses, chatbot_history: App specific tables.

Operations

Example of a database query:

import { db } from "@/db";
import { users } from "@/db/schema";
import { eq } from "drizzle-orm";

// Select
const user = await db.select().from(users).where(eq(users.email, "test@example.com"));

// Insert
await db.insert(users).values({ ... });

Migrations

  • Generate: npx drizzle-kit generate
  • Push: npx drizzle-kit push (or migrate script)

majiayu000/claude-skill-registry-data/tree/main/data/database-orm commit 57d2a7a3ed

Frequently asked questions

npx skillmds add majiayu000/database-orm