orm is a free, open source databases project written in TypeScript and released under Apache-2.0. It has 47,614 GitHub stars, 2,537 forks and 2,627 open issues, and was last pushed 3 hours ago. On this registry it ranks #6 of 81 tracked projects in Databases, with 5 head-to-head comparisons available. It gained 6 stars over the last 3 tracked days.

What is orm?

Prisma ORM is a next-generation TypeScript ORM for Node.js and TypeScript applications, supporting PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB, and CockroachDB, and it is aimed at developers and teams building data-backed applications in that ecosystem.

What it is

Prisma ORM is a TypeScript ORM that lives in the Node.js and TypeScript ecosystem. The repository also covers Prisma 8, a TypeScript rewrite designed to be extensible, composable, and AI-agent friendly by default. Prisma 7 remains fully supported on the v7 branch, with documentation at prisma.io/docs/orm/v7. The project is licensed under Apache-2.0.

The concrete problem it solves is the hand-written database access layer that a team would otherwise maintain inside a Node.js and TypeScript application. It replaces manual SQL, bespoke data mapping, and per-database glue code with a generated contract, a runtime, and CLI workflows for supported databases such as PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB, and CockroachDB.

Key capabilities

  • Supports PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB, and CockroachDB, as the tagline and topics list indicate.
  • Ships Prisma 8 as a TypeScript rewrite that is extensible, composable, and AI-agent friendly by default.
  • The npm create prisma command scaffolds a new app from templates including Next.js, Hono, Nuxt, Astro, NestJS, SvelteKit, TanStack Start, and Elysia, and wires Prisma 8 to PostgreSQL or MongoDB.
  • The npx prisma orm init command writes prisma.config.ts, scaffolds a starter contract and db.ts under src/prisma/, installs the runtime, and emits the contract without touching the framework or build setup.
  • The npx prisma skills sync command installs agent skills, and both installers leave a top-level prisma-8.md primer plus one SKILL.md per workflow in .claude/skills/, .cursor/skills/, .agents/skills/, and .devin/skills/.
  • The prisma-8 skill applies upgrade recipes, drafts structured GitHub issues, or provides a Prisma Discord link for live Q&A, with review before submission.
  • The scorecard.md file names every feature gap, and Prisma 8 has a minimal core where everything around it, including Postgres support itself, is an extension.

Who uses it and how

  • New projects in the Node.js and TypeScript ecosystem can start with Prisma 8 by running npm create prisma and choosing a framework template plus PostgreSQL or MongoDB.
  • Existing Prisma 7 applications can migrate incrementally, while Prisma 7 remains on the v7 branch with bug fixes for twelve months after 8.0.0 final.
  • Teams using AI coding agents in Claude Code, Cursor, Copilot Agent, or Devin get skills auto-loaded when prompts match, so the agent can drive schema changes and queries end-to-end.
  • Extension authors work against the minimal core and build around it, including Postgres support itself.
  • Developers running Node.js 24 or newer with npm, pnpm, or yarn are the supported baseline.

Getting started

For a new project, run npm create prisma to scaffold an app and wire in Prisma 8 with PostgreSQL or MongoDB. To add Prisma 8 to an existing project, run npx prisma orm init from the repository root, then run npx prisma skills sync to install the agent skills.

How it compares

No comparable tools are named in the provided facts, and no list of paid products that this project replaces is supplied. Within this registry, Prisma ORM stands alone in the Infrastructure & Operations / Databases category.

When to use it — and when not to

A self-hoster must provide a supported database and a Node.js 24 or newer runtime with a package manager such as npm, pnpm, or yarn. Teams that require a stable GA release and cannot tolerate breaking changes during the release-candidate period should stay on Prisma 7 or wait for 8.0.0 final, which is expected in the next four to eight weeks. The release candidate may include breaking changes, and scorecard.md names every gap, so teams that need a complete feature set today should verify coverage before adopting.

project readme (upstream, from github) — read inline

Docs | Discord | X | Blog Post | Architecture

License: Apache-2.0 npm CI


Using Prisma 7? It remains fully supported. Its source lives on the v7 branch of this repository and its docs at prisma.io/docs/orm/v7.

Prisma 8 is a release candidate. 8.0.0 final is expected in the next four to eight weeks. Until then a release candidate may include breaking changes, and every release ships with an upgrade recipe that the prisma-8 skill applies for you. The candidate is a complete implementation we stand behind: we treat bugs in it as urgent, and the risk you take on is a feature that is not built yet rather than churn. The feature scoreboard names every gap. New projects should start here. Existing Prisma 7 applications can migrate incrementally, and Prisma 7 stays on the v7 branch with bug fixes for twelve months after 8.0.0 final. Star the repo, follow @prisma on X, or read along on the Prisma blog.

Prisma 8 is a TypeScript rewrite of Prisma ORM, designed to be extensible, composable, and AI-agent friendly by default. Read the announcement or start with the docs.

Prerequisites

  • Node.js 24 or newer
  • A package manager (npm, pnpm, or yarn)

Getting started

1. Scaffold a new project

The interactive scaffolder picks an app template (Next.js, Hono, Nuxt, Astro, NestJS, SvelteKit, TanStack Start, or Elysia) and wires Prisma 8 in with your chosen database (PostgreSQL or MongoDB):

npm create prisma

You finish with a runnable app, a starter contract, and the agent skills already installed. See the create-prisma reference for every template and flag, or follow the PostgreSQL and MongoDB quickstarts.

2. Or, add Prisma 8 to an existing project

Run this from your repo root:

npx prisma orm init

orm init writes prisma.config.ts, scaffolds a starter contract and db.ts under src/prisma/, installs the runtime, and emits the contract. It does not touch your framework or build setup. Then install the agent skills:

npx prisma skills sync

See the orm init and skills CLI references, or the guides for adding Prisma 8 to an existing PostgreSQL or MongoDB app.

3. Use your AI agent for everything Prisma 8

Both installers leave a top-level prisma-8.md primer at your project root for any agent to read first, and install one SKILL.md per workflow into the directories agent runtimes read:

  • .claude/skills//SKILL.md — Claude Code
  • .cursor/skills//SKILL.md — Cursor
  • .agents/skills//SKILL.md — universal location for Copilot Agent and other runtimes
  • .devin/skills//SKILL.md — Devin

Skills ship inside the Prisma packages your project installs, so they always describe the version in use. Your editor's AI assistant auto-loads the right skill when your prompt matches.

Just describe what you want. For example:

"Add a posts model with a relation to users, then write a query that loads each user's three most recent posts."

The agent loads the prisma-8 skill, opens its contract and queries references, then drives the change end-to-end.

For the full catalogue and what each skill covers, see skills/README.md.

Found a bug, missing a feature, or have a question for the team?

Ask your agent. The prisma-8 skill's feedback flow drafts a structured GitHub issue or hands you a Prisma Discord link for live Q&A. You can review and confirm before anything is submitted.

For extension authors

Prisma 8 has a minimal core. Everything around it, including Postgres support itself, is built on the same public SPI that's available to any author. If you've wanted to integrate your tool, your database, or your library with Prisma, this is the way in.

Extensions already shipping:

See Using extensions for how to install and register one. Want to ship your own? The call for extension authors walks through the SPI, the layers your extension can hook into, and how the team features new extensions.

Supported databases

  • PostgreSQL — the primary target, first-class support
  • MongoDB — first-class support
  • SQLite — planned next, a proof of concept today

MySQL follows after SQLite. See the feature scoreboard for what each database supports today.

Contributing

See CONTRIBUTING.md for setup, commands, DCO signoff, and PR expectations. For substantive changes, please open an issue first so we can give direction-fit feedback before you invest implementation time.

Security issues: follow the Private Vulnerability Reporting flow in SECURITY.md. Please do not file them as public issues.

Community

Built something with Prisma 8? Tag @prisma on X. The best community builds get a shout-out and a link here.

License

Apache 2.0. See LICENSE.

Frequently asked questions

Is orm free to use?

orm is open source under the Apache-2.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does orm do?

Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB

What is orm written in?

orm is primarily written in TypeScript. Its source is publicly available at https://github.com/prisma/orm, and it has 47,614 GitHub stars.