Compare

Comparing bookshelf vs. knex vs. objection vs. orm vs. sequelize

How are they different?

Here we compare between bookshelf, knex, objection, orm and sequelize. In this comparison we will focus on the latest versions of those packages. The current versions are bookshelf 0.10.3, knex 0.13.0, objection 0.8.4, orm 3.2.3 and sequelize 4.2.0.

bookshelf, A lightweight ORM for PostgreSQL, MySQL, and SQLite3. It was authored by Tim Griesser on Apr, 2013.
knex, A batteries-included SQL query & schema builder for Postgres, MySQL and SQLite3 and the Browser. It was authored by Tim Griesser on May, 2013.
objection, An SQL-friendly ORM for Node.js. It was authored by Sami Koskimäki on Jun, 2012.
orm, NodeJS Object-relational mapping. It was authored by Diogo Resende on Mar, 2011.
sequelize, Multi dialect ORM for Node.JS. It was authored by Sascha Depold on May, 2011.

When comparing those packages you notice that sequelize is the more popular package today (10,255 Stars on Github).
knex has a bigger community of maintainers.
objection has less dependencies, less open issues and less open pull requests.
orm has been out there for longer (since 4 years ago), it also sequelize has more versions, more frequent updates, more daily downloads, more weekly downloads, more monthly downloads, more stars on Github, more followers on Github and more forks.

In our review bookshelf got 57,113 points, knex got 225,042 points, objection got 13,831 points, orm got 7,831 points and sequelize got 304,902 points. The points are a summary of how big the community is and how well the package is maintained.

Lets dive deeper and have a look at some more details on those packages.

Going into more detail

 

bookshelf
0.10.3
NPM

knex
0.13.0
NPM

objection
0.8.4
NPM

orm
3.2.3
NPM

sequelize
4.2.0
NPM

description A lightweight ORM for PostgreSQL, MySQL, and SQLite3 A batteries-included SQL query & schema builder for Postgres, MySQL and SQLite3 and the Browser An SQL-friendly ORM for Node.js NodeJS Object-relational mapping Multi dialect ORM for Node.JS
keywords orm, mysql, postgresql, sqlite, datamapper, active record sql, query, postgresql, mysql, mariadb, sqlite3, oracle, mssql orm, knex, sql, query, postgresql, mysql, sqlite3 orm, odm, database, mysql, postgres, redshift, sqlite, mongodb mysql, sqlite, postgresql, postgres, mssql, orm, nodejs, object relational mapper
author Tim Griesser Tim Griesser Sami Koskimäki Diogo Resende Sascha Depold
Related / similar packages
sql-bricks pg-promise sql-bricks sql-bricks sql-bricks
Comparison
licenses MIT MIT MIT MIT MIT
created 4 years ago (Apr, 2013) 4 years ago (May, 2013) 5 years ago (Jun, 2012) 6 years ago (Mar, 2011) 6 years ago (May, 2011)
modified 21 days ago 14 days ago a day ago 8 days ago a day ago
total versions 68 116 67 82 192
version average every 22 days every 13 days every a month every a month every 12 days
maintainers 4 8 2 2 5
dependencies 7 18 3 7 18
Daily Downloads 3,100 14,214 1,169 158 20,100
Weekly Downloads 17,068 73,765 3,881 1,152 106,266
Monthly Downloads 81,227 345,953 16,780 5,166 453,520
open issues 502 485 22 221 953
open pull requests 30 30 2 19 30
stargazers 4,198 4,840 1,263 2,522 10,255
subscribers 108 152 48 110 329
forks 369 704 70 351 1,915
wiki
Points
Overall points

57,113

Points

225,042

Points

13,831

Points

7,831

Points

304,902

Points
CLI Shortcuts
install npm i -S bookshelf npm i -S knex npm i -S objection npm i -S orm npm i -S sequelize
remove npm r -S bookshelf npm r -S knex npm r -S objection npm r -S orm npm r -S sequelize

Share this with other developers