= Sequelize
{c}
Source code: https://github.com/sequelize/sequelize
Some usage examples under: <sequelize example>{full}.
As of 2021, this library is extremely painful to use. It does feel semi-mature, but there are just too much horrible things going on;
* the documentation is a bit messy and misses a lot of stuff. The examples are often too short, and it is hard to understand what specific options they are talking about do because they lack clear input/expected output pairs. Examples:
* https://github.com/sequelize/sequelize/issues/5385#issuecomment-324479607
* https://github.com/sequelize/sequelize/issues/1775#issuecomment-360028396
* the implementation has several inelegant/unintuitive annoyances/requirements of code repetition that drive you mad.
The association API feels notably bad, it took a few days for <Ciro Santilli> to learn to do what he considers "basic" association operations, knowledge which he dumped to: https://stackoverflow.com/questions/22958683/how-to-implement-many-to-many-association-in-sequelize/67973948#67973948
See also: <how to decide if an ORM is good?>.
* bugs are piling up. It appears that many key devs left, and current maintainers are just not being able to keep up.
And they have setup a stupid bot that closes every thread automatically after a few days, what's the point... valid bugs are being closed due to this, and it is impossible to distinguish what is solved and what isn't since everything gets closed.
Some glaring issues are listed at <the horrors of Sequelize>.
Back to article page