drizzle-orm README

The project's README from github.com/drizzle-team/drizzle-orm. As one markdown file: README.md.


Headless ORM for NodeJS, TypeScript and JavaScript 🚀

Website • Documentation • Twitter • Discord


What's Drizzle?

Drizzle is a modern TypeScript ORM developers wanna use in their next project. It is lightweight at only ~7.4kb minified+gzipped, and it's tree shakeable with exactly 0 dependencies.

Drizzle supports every PostgreSQL, MySQL and SQLite database, including serverless ones like Turso, Neon, Xata, PlanetScale, Cloudflare D1, FlyIO LiteFS, Vercel Postgres, Supabase and AWS Data API. No bells and whistles, no Rust binaries, no serverless adapters, everything just works out of the box.

Drizzle is serverless-ready by design. It works in every major JavaScript runtime like NodeJS, Bun, Deno, Cloudflare Workers, Supabase functions, any Edge runtime, and even in browsers.
With Drizzle you can be fast out of the box and save time and costs while never introducing any data proxies into your infrastructure.

While you can use Drizzle as a JavaScript library, it shines with TypeScript. It lets you declare SQL schemas and build both relational and SQL-like queries, while keeping the balance between type-safety and extensibility for toolmakers to build on top.

Ecosystem

While Drizzle ORM remains a thin typed layer on top of SQL, we made a set of tools for people to have best possible developer experience.

Drizzle comes with a powerful Drizzle Kit CLI companion for you to have hassle-free migrations. It can generate SQL migration files for you or apply schema changes directly to the database.

We also have Drizzle Studio for you to effortlessly browse and manipulate data in your database of choice.

Documentation

Check out the full documentation on the website.

Our sponsors ❤️

drizzle-orm (drizzle-team/drizzle-orm)

Searching Database…

Что это такое?Drizzle ORM — современная лёгкая ORM на TypeScript для работы с SQL-базами данных из Node.js, Bun, Deno или edge- и браузерных сред.
Это библиотека или в комплекте есть дополнительные инструменты?В первую очередь это библиотека, которую вы импортируете в свой код, но в комплекте есть сопутствующий CLI (Drizzle Kit) для миграций и GUI (Drizzle Studio) для просмотра данных.
Как добавить это в проект?Установите drizzle-orm как зависимость, опишите SQL-схему на TypeScript и начинайте писать реляционные или SQL-подобные запросы. Для генерации и применения миграций используйте Drizzle Kit.
Нужны ли для работы Rust-бинарники или дополнительные адаптеры?Нет — у него нет зависимостей и Rust-бинарников; всё работает сразу, без отдельных адаптеров для serverless.
Какие базы данных и среды выполнения он действительно поддерживает?Поддерживаются PostgreSQL, MySQL и SQLite (включая serverless-варианты вроде Turso, Neon, Xata, PlanetScale, Cloudflare D1, Vercel Postgres, Supabase и AWS Data API), а работает он в Node.js, Bun, Deno, Cloudflare Workers, edge-средах и даже в браузерах.
Можно ли использовать его с обычным JavaScript или нужен TypeScript?Его можно использовать как обычную JavaScript-библиотеку, но раскрывается он по-настоящему с TypeScript, который даёт типобезопасные схемы и запросы.
Вставляет ли Drizzle прокси-слой данных между моим приложением и базой?Нет, он не добавляет никакого прокси-слоя для данных, что делает инфраструктуру простой и готовой к serverless.
Насколько большой объём библиотеки?Drizzle ORM очень лёгкий — около 7,4 КБ в минифицированном и сжатом gzip виде, и он поддерживает tree-shaking.
Что делает Drizzle Kit?Drizzle Kit — это сопутствующий CLI, который генерирует файлы SQL-миграций по вашей схеме или применяет изменения схемы напрямую к базе данных.
Что такое Drizzle Studio?Drizzle Studio — инструмент в составе экосистемы, который позволяет просматривать и редактировать данные базы через графический интерфейс.
Почему стоит выбрать его, а не более тяжёлую ORM?Drizzle — тонкий типизированный слой поверх самого SQL, без зависимостей и скрытых накладных расходов во время работы, поэтому он запускается где угодно: от серверов до edge-функций и браузеров, без дополнительных адаптеров.
What are similar projects?orm, directus, ent, sequelize, typeorm, crystal, sqlit, sqlx
Size
61.2 MB
Stars
36K
Age
5y
Commits · 90 Days