Back to Discover
Drizzle ORM logo

Drizzle ORM

StartupLaunched September 2026

Screenshots

The Story

Drizzle is a TypeScript ORM built around the idea that the query layer should not hide SQL. Schema is declared in TypeScript, queries are written with a chainable API that maps closely to SQL clauses, and the generated types flow from the schema definition rather than from a separate code generator pass.

Migrations are produced by diffing the declared schema against the previous state. The tool emits plain SQL files, which means a migration can be read and edited before it runs. That is a deliberate contrast with ORMs that generate opaque migration steps, and it makes review of schema changes part of the normal pull request.

The library supports Postgres, MySQL, SQLite, and the serverless variants of each, and it runs in edge runtimes because it has no dependency on Node-specific APIs. Teams that want an ORM but dislike losing the ability to reason about the emitted SQL tend to land here; teams that want a fully abstracted data layer with a large ecosystem of plugins may prefer a heavier framework.

Overview

Drizzle's design choice is restraint: it adds types and a query builder, and otherwise stays out of the way of SQL.

Schema is declared in TypeScript. A table definition names its columns, types, constraints, and relations, and the query builder derives its types from that declaration. There is no separate model layer to keep in sync and no decorator metadata to configure.

Queries read as a chain of SQL clauses. A select names the columns, a join names the condition, and a where clause takes an expression. Because the builder maps closely to SQL, the generated statement is usually predictable from the code, and the escape hatch to raw SQL is available where the builder does not cover a construct.

Migrations come from a schema diff. The tool compares the declared schema to the last known state and writes a SQL file for the change. Because the output is plain SQL, it can be reviewed, reordered, or hand-edited before it runs, which is what makes schema changes reviewable in the same way as application code.

Key Features

  • Schema-derived types

    Types flow from the TypeScript schema declaration, so there is no separate generation step to keep in sync.

  • SQL-shaped query builder

    Queries map closely to SQL clauses, so the emitted statement is predictable from the code that builds it.

  • Readable SQL migrations

    Schema diffs are emitted as plain SQL files that can be reviewed and edited before they run.

  • Edge runtime support

    The library avoids Node-specific APIs, so it runs in serverless and edge runtimes as well as a standard server.

Where Drizzle ORM is a strong choice, and where it is not

Choose Drizzle when the team is comfortable with SQL and wants types and migrations without giving up the ability to read the emitted statements.

Look elsewhere if the team wants a data layer that abstracts the database entirely, or needs a large ecosystem of plugins and a long-established enterprise support story.

Getting started

Schema and first query in an afternoon; migrations are where the care is needed.

  • ~30 min
    Time to first query

    Declare a table, generate types from it, and query. No code generation step to wire up.

  • Free
    Cost to start

    Open source under Apache 2.0. Only the database costs money.

  • TypeScript + a DB
    Prerequisites

    A TypeScript project and a database to connect to.

Known limitations

Constraints confirmed from the library's documentation.

  • You are expected to know SQL. The query builder mirrors SQL rather than hiding it, which is a barrier if you do not.
  • Migrations need review. Generated SQL is editable, which means it can also be wrong.
  • Smaller ecosystem than older ORMs. Fewer plugins and less third-party material.
  • Breaking changes have occurred across major versions, so upgrades need reading the release notes.
OUR VERDICT

Pick Drizzle when you want types without losing sight of SQL

It adds types and a query builder and otherwise stays out of the way, which suits a team that already reasons in SQL.

The differentiator is that the emitted statement is predictable from the code. Migrations come out as plain SQL files that can be reviewed in a pull request.

If you want the database fully abstracted, or you need a large plugin ecosystem, a heavier ORM is the better fit.

FAQ

What is Drizzle ORM?

Drizzle is a TypeScript ORM whose query builder mirrors SQL and whose types are derived from a schema declared in TypeScript.

Is Drizzle free?

Yes. Drizzle is open source under the Apache 2.0 license, so there is no licence cost for the library.

How does Drizzle handle migrations?

It diffs the declared schema against the previous state and emits plain SQL migration files that can be reviewed and edited.

Does Drizzle work on edge runtimes?

Yes. It avoids Node-specific APIs, so it runs in serverless and edge runtimes as well as a standard server.

What stack is Drizzle built with?

CompassPad records Drizzle as a TypeScript library with a Node.js CLI for migration generation, based on its public repository.

What we checked

  • LIVE
    Site and primary link

    The marketing site resolved and the primary product link reached the application.

  • PRICING
    Pricing page

    The library is open source and free to use; there is no paid pricing page for the ORM itself.

  • DOCS
    Documentation

    Documentation is public and covers schema declaration, queries, and migrations.

  • FRESHNESS
    Changelog

    A dated release notes page is published and reachable without an account.

Discussion

No comments yet. Be the first.

Join the conversation. Sign up to comment.

Sign up free

Similar But Scrappier

DocuShift

Trending

Track API changes automatically, surfacing what matters.

Developer ToolsCCompassPad editorial

DocuShift watches the APIs a team depends on and reports changes as they happen. The product's own summary is "Track API changes automatically, surfacing what matters." Its page frames the problem as API deprecations arriving without warning: they move into a codebase, change behaviour, and wait until launch day to surface. The pitch is a shift from manual research to alerts. The site describes the workflow as "from hours of manual research to zero-effort alerts," and claims monitoring can be started in minutes. The public page is a single product landing page; there is no published pricing or documentation at the time of collection.

ScrollLaunch

Trending

Launch your product and rank on Google and AI search.

Developer ToolsCCompassPad editorial

ScrollLaunch is a launch platform for indie makers that positions itself as a Product Hunt alternative. Its page describes weekly launches, dofollow product pages, and a directory of more than 1,000 startup directories, aimed at being found on Google and in AI search. The site's own headline is "Launch Your Product and Rank on Google & AI Search." It publishes a weekly set of product launches on the page, and it also lists an MCP CLI, indicating the directory is intended to be reachable by AI agents as well as people.

My Bot Farm

An open market to share your agents.

AI & Machine LearningCCompassPad editorial

My Bot Farm is a marketplace for whole agents and teams rather than a catalogue of individual skills. Its page states that you browse bots and install a copy for GrokBot, Hermes, and OpenClaw. The site draws a deliberate distinction in its own headline: "An Open Market to share your Agents. Not a warehouse of skills." It treats teams as first-class objects alongside single bots, and says new listings appear when they land rather than when someone remembers to check.