Source: /cirosantilli/how-to-decide-if-an-orm-is-good

= How to decide if an ORM is good?

How to decide if an ORM is decent? Just try to replicate every <SQL> query from \a[nodejs/sequelize/raw/many_to_many.js] on <PostgreSQL> and <SQLite>.

There is only a very finite number of possible reasonable queries on a two table many to many relationship with a join table. A decent ORM \i[has] to be able to do them all.

If it can do all those queries, then the ORM can actually do a good subset of SQL and is decent. If not, it can't, and this will make you suffer. E.g. <Sequelize> v5 is such an ORM that makes you suffer.

The next thing to check are transactions.

Basically, all of those come up if you try to implement a blog <hello world> world such as <gothinkster realworld> \i[correctly], i.e. without unnecessary inefficiencies due to your ORM on top of underlying SQL, and dealing with concurrency.