Object–relational mapping (ORM) is a programming technique for converting data between incompatible type systems using object-oriented programming languages. This creates, in effect, a “virtual object database” that can be used from within the programming language.
In essence, ORM is a design pattern for converting (wrapping) that data stored within a relational database into an object that can be used within an object oriented language. It creates a layer between the language and the database, helping programmers work with data without the OOP paradigm.
Compared to traditional techniques of exchange between an object-oriented language and a relational database, ORM often reduces the amount of code that needs to be written. It standardizes interfaces reducing boilerplate and speeding development time. Advocates of ORMs claim they increase productivity, improve application design, reuse code and maintain the application over time. On the other hand, ORM suffers the disadvantage of the abstraction obscuring what’s happening in the code. And over-use of ORM software can produce poorly designed databases.
Here’s our verdict summarised in a legendary ratings chart. Only free and open source software is eligible for inclusion.

Let’s explore the 8 ORM tools for TypeScript. For each program we have compiled its own portal page, a full description with an in-depth analysis of its features, together with links to relevant resources.
| TypeScript Object-Relational Mapping Software | |
|---|---|
| Sequelize | Promise-based Node.js ORM for Postgres, MySQL, MariaDB, SQLite and more |
| TypeORM | ORM that can run in NodeJS, Browser, Cordova, PhoneGap, Ionic ... |
| Prisma | Next-generation Node.js and TypeScript ORM |
| Drizzle ORM | Lightweight TypeScript toolkit for type-safe SQL database access |
| Objection.js | ORM for Node.js that aims to stay out of your way |
| MikroORM | ORM for Node.js based on Data Mapper, Unit of Work and Identity Map patterns |
| Lucid | Active Record database layer designed for AdonisJS applications |
| Joist | Opinionated TypeScript data layer with strong typing and relations |
This article has been updated to reflect the changes outlined in our recent announcement.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.