image

Node object-relational mappers (ORMs)

Notable object-relational mapping libraries for Node.js and relational database systems

Object Relational Mapping (ORM) is the process of mapping between objects and relational database systems (PostgreSQL, MySQL, MariaDB, SQLite, MSSQL, etc.)

Choosing an ORM for your Node.js app can be daunting. There are many different libraries that allow you to query and manipulate data from your JavaScript application, and each varies in its design and level of abstraction.

ORMs are often capable of connecting to different databases, which comes handy during switching from one db to the other.


Sequelize

image

sequelize.org

Sequelize is a promise-based Node.js ORM for Postgres, MySQL, MariaDB, SQLite and Microsoft SQL Server. It features solid transaction support, relations, eager and lazy loading, read replication and more.

Bookshelf

image

bookshelfjs.org

Bookshelf is a JavaScript ORM for Node.js, built on the Knex SQL query builder, designed to work with PostgreSQL, MySQL, and SQLite3.

Objection

image

vincit.github.io

Objection.js is an ORM for Node.js that aims to stay out of your way and make it as easy as possible to use the full power of SQL, built on an SQL query builder called knex, work with SQLite3, Postgres and MySQL.

Waterline

image

waterlinejs.org

Waterline uses the concept of an adapter to translate a predefined set of methods into a query that can be understood by many databases like MySQL, PostgreSQL, MongoDB, Redis, etc.