// the find
dresende/node-orm2
Object Relational Mapping
node-orm2 is a Node.js ORM supporting MySQL, PostgreSQL, SQLite, and MongoDB with a callback-based API and association support. The README opens with a deprecation notice pointing users to TypeORM or Sequelize. This is a maintenance artifact, not a tool anyone should pick for new work.
The association model (hasOne, hasMany, extendsTo) is well thought out and handles join tables, reverse accessors, and composite keys cleanly. The chainable query API (.find().limit().offset().only().run()) is readable and covers most common query patterns without ceremony. Identity cache (singleton pattern) is a nice touch for avoiding stale duplicate instances in memory. Raw SQL escape hatch via db.driver.execQuery with parameterized ? and ?? substitution is safe and practical.
Abandoned — maintainer themselves says so in the README, and the last meaningful activity was years before the 2025 push. MongoDB support was already broken on Node 8, which was EOL in 2019. The entire API is callback-based with Bluebird promise wrappers bolted on as an afterthought; no native async/await anywhere in the core. TypeScript definitions exist in a subdirectory but were clearly not maintained alongside the JS — you'll hit gaps immediately on anything beyond basic models.