Drizzle Studio is a built-in database GUI that comes free with Drizzle ORM. Browse, edit, and query your database from the browser.
Launch
npx drizzle-kit studio
# Opens browser at https://local.drizzle.studio
Drizzle ORM Setup
// drizzle.config.ts
import { defineConfig } from "drizzle-kit";
export default defineConfig({
schema: "./src/db/schema.ts",
out: "./drizzle",
dialect: "postgresql",
dbCredentials: { url: process.env.DATABASE_URL }
});
Schema
import { pgTable, serial, text, integer, timestamp, boolean } from "drizzle-orm/pg-core";
export const users = pgTable("users", {
id: serial("id").primaryKey(),
name: text("name").notNull(),
email: text("email").unique().notNull(),
age: integer("age"),
active: boolean("active").default(true),
createdAt: timestamp("created_at").defaultNow()
});
export const posts = pgTable("posts", {
id: serial("id").primaryKey(),
title: text("title").notNull(),
content: text("content"),
authorId: integer("author_id").references(() => users.id)
});
Queries
import { db } from "./db";
import { users, posts } from "./schema";
import { eq, gt, like } from "drizzle-orm";
const allUsers = await db.select().from(users);
const activeUsers = await db.select().from(users).where(eq(users.active, true));
const withPosts = await db.select().from(users).leftJoin(posts, eq(users.id, posts.authorId));
Key Features
- Free database GUI
- Browse/edit/filter data
- Run SQL queries
- View relations
- Works with Postgres, MySQL, SQLite
Need to scrape or monitor web data at scale? Check out my web scraping actors on Apify or email spinov001@gmail.com for custom solutions.
Top comments (0)