What ORM would you recommend?

This page summarizes the projects mentioned and recommended in the original post on /r/node

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • koa-boilerplate

    A Fully Customized and Production Grade Koa REST API Implementing GoThinksters' RealWorld

    With typeorm I can't do even basic things without query builder, and it's query builder is very verbose. For example, (this is not my code, just example): https://github.com/eflem00/koa-boilerplate/blob/98265346877a30f3595baf6f574726078b2b6c54/src/controllers/ArticleController.ts - I have very similar code on current project, have to use query builder, define return types manually, awfully not readable

  • Sequelize

    Feature-rich ORM for modern Node.js and TypeScript, it supports PostgreSQL (with JSON and JSONB support), MySQL, MariaDB, SQLite, MS SQL Server, Snowflake, Oracle DB (v6), DB2 and DB2 for IBM i.

    Been using sequelize for a long time, but it just falls apart in certain scenarios. The github has tons of open and very real issues that have been open for years. It is nice and easy to use if you don't hit any of these scenarios though. Some of them I have personally experienced: https://github.com/sequelize/sequelize/issues/7649 https://github.com/sequelize/sequelize/issues/8457

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

  • Objection.js

    An SQL-friendly ORM for Node.js

  • MikroORM

    TypeScript ORM for Node.js based on Data Mapper, Unit of Work and Identity Map patterns. Supports MongoDB, MySQL, MariaDB, PostgreSQL and SQLite databases.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts