sequelize

An easy-to-use multi SQL dialect ORM tool for Node.js

Showing:

Popularity

Downloads/wk

1.1M

GitHub Stars

25K

Maintenance

Last Commit

3mos ago

Contributors

1,081

Package

Dependencies

13

License

MIT

Type Definitions

Built-In

Tree-Shakeable

No?

Reviews

Average Rating

4.3/5117
Read All Reviews
AKAJJI
bvego
Derrick-Mei
preveenraj
rjaus
JITENDER1441
nikhil2882

Top Feedback

22Performant
21Easy to Use
13Highly Customizable
12Great Documentation
9Poor Documentation
8Buggy

Readme

Sequelize

npm version Build Status

npm downloads Merged PRs semantic-release

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

Sequelize follows Semantic Versioning and supports Node v10 and above.

New to Sequelize? Take a look at the Tutorials and Guides. You might also be interested in the API Reference.

Would you like to contribute? Read our contribution guidelines to know more. There are many ways to help.

v6 Release

You can find the detailed changelog here.

Note: Looking for maintainers!

Recently, a bigger part of the former core maintainers (thanks to all your hard work!) have been rather busy. Hence, the available time to look after our beloved ORM has been shrinking and shrinking drastically, generating a great chance for you:

We are looking for more core maintainers who are interested in improving/fixing our TypeScript typings, improving the documentation, organizing issues, reviewing PRs, streamlining the overall code base and planning the future roadmap.

If that sounds interesting to you, please reach out to us on our Slack channel by sending a direct message to Pedro A P B. If you don't have access, get yourself an invite automatically via this link. We are looking forward to meet you!

Installation

$ npm i sequelize # This will install v6

# And one of the following:
$ npm i pg pg-hstore # Postgres
$ npm i mysql2
$ npm i mariadb
$ npm i sqlite3
$ npm i tedious # Microsoft SQL Server

Documentation

Responsible disclosure

If you have security issues to report, please refer to our Responsible Disclosure Policy for more details.

Resources

Tools

Translations

Rate & Review

Great Documentation12
Easy to Use21
Performant22
Highly Customizable13
Bleeding Edge4
Responsive Maintainers4
Poor Documentation9
Hard to Use1
Slow0
Buggy8
Abandoned3
Unwelcoming Community0
100
AKAJJI1 Rating1 Review
8 months ago
Poor Documentation
Easy to Use
Performant
Abandoned

very poor documentation, especially when you come to use it with associations( one to one , one to many and many to many relations ) , while using it u have to import a lot of libraries , when you delete data that have a many to many elation the joins table doesnt delete the record, you have to use a lot of code to finally reach ur goal , i ve used Eloquent in Laravel and it is way better and documented and when it comes to the associations it makes it easy with its functions like attach detach and sync, if i have to choose between using sequelize as an ORM or just SQL i ll probably chose to write SQL queries.


0
Bruno VegoSplit, Croatia141 Ratings129 Reviews
Developer at Toptal & SeekandHit
8 months ago
Poor Documentation

Sequelize is probably one of the first libraries you'll learn when watching YouTube videos about making a node powered backend. Though it is very popular and battle-tested, I've always found using sequelize a hassle. It requires a lot of boilerplate and feels very outdated. The documentation is pretty lacking in information as well. I recommend looking at knex as a lightweight alternative.


0
Derrick-MeiChicago1 Rating1 Review
I'm filling this out because Jacob Williams is telling me to in capital letters :p
September 23, 2020

Horrible documentation. Sequelize primarily uses code to create tables via the .sync() method vs using migrations. Migrations are possible, but documentation is poor. You have to write your own models and then write your own migrations as well instead of using a command to create them from the model files. Eager loading is easy if you want all the data. Filtering eager loaded data using the where clause is easy, but limiting eager loaded data is not possible.


2
AidarIslamov
siourdas-vasilis
Preveen RajKochi, Kerala, India58 Ratings49 Reviews
Software Engineer @bigbinary
3 months ago
Easy to Use
Great Documentation

The package provides a huge example of abstraction and loosely coupled database. Using sequelize in our project gave us the confidence that we could scale up easily as well as switch to any other database system without much refactoring in our project code base.


2
ajayesivan
vishnuprasad-95
Riley JamesMelbourne, Australia15 Ratings13 Reviews
Founder SuperAPI.com.au (@SuperAPIau), Ex-Developer Evangelist @XeroAPI
2 months ago

Really love the sync feature for super fast prototyping. I've also been really impressed with the way they manage issue submission (SSCCE repo to submit an example with tests!). The docs are pretty good, but could REALLY do with a working search feature! All in all, sequelize has become my go to ORM for node.


1
Zac10ck

Alternatives

knexA query builder for PostgreSQL, MySQL, SQL Server, SQLite3 and Oracle, designed to be flexible, portable, and fun to use.
User Rating
4.3/ 5
23
Top Feedback
18Great Documentation
12Easy to Use
11Performant
GitHub Stars
15K
Weekly Downloads
831K
wetlandA Node.js ORM, mapping-based. Works with MySQL, PostgreSQL, SQLite and more.
User Rating
5.0/ 5
1
Top Feedback
N/A
GitHub Stars
259
Weekly Downloads
29
bookshelfA simple Node.js ORM for PostgreSQL, MySQL and SQLite3 built on top of Knex.js
User Rating
3.8/ 5
4
Top Feedback
N/A
GitHub Stars
6K
Weekly Downloads
95K
objectionAn SQL-friendly ORM for Node.js
User Rating
3.3/ 5
3
Top Feedback
3Great Documentation
2Easy to Use
1Performant
GitHub Stars
6K
Weekly Downloads
105K
typeormORM for TypeScript and JavaScript (ES7, ES6, ES5). Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, SAP Hana, WebSQL databases. Works in NodeJS, Browser, Ionic, Cordova and Electron platforms.
User Rating
4.4/ 5
74
Top Feedback
11Easy to Use
11Poor Documentation
6Performant
GitHub Stars
26K
Weekly Downloads
779K
See 16 Alternatives