An ActiveRecord-inspired ORM for Node.js supporting SQLite3, MySQL, Postgres, Oracle, REST, and LDAP.
OpenRecord is an ActiveRecord-inspired Object-Relational Mapper (ORM) for Node.js that simplifies database interactions by providing a familiar ActiveRecord-style API. It supports multiple databases and datastores, including SQLite3, MySQL, Postgres, Oracle, REST, and LDAP/ActiveDirectory, and includes features for building GraphQL endpoints.
Node.js developers building applications that require database interactions with SQL or NoSQL datastores, especially those familiar with ActiveRecord patterns or needing GraphQL support.
Developers choose OpenRecord for its zero-configuration approach, multi-database support, and built-in GraphQL features, making it a flexible and extensible ORM that reduces boilerplate code.
Make ORMs great again!
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports SQLite3, MySQL, Postgres, Oracle, REST, and LDAP/ActiveDirectory, enabling seamless switching between diverse data sources without code changes, as highlighted in the README.
Includes features to easily create GraphQL endpoints for supported databases, reducing the need for additional setup or external libraries, per the project description.
Models and attributes are optional; OpenRecord infers them from the database schema, speeding up development and reducing boilerplate, as demonstrated in the usage example.
Provides an ActiveRecord-style interface, making it intuitive for developers experienced with Rails or similar frameworks, easing the learning curve.
Designed to be open and easy to extend with custom functionality, as emphasized in the README's philosophy and documentation.
As a smaller project sponsored by a niche company, it lacks the extensive plugins, tutorials, and community support of more popular ORMs like Sequelize or TypeORM.
The abstraction layer for multi-database support and zero-configuration inference may introduce overhead, potentially impacting performance in high-load or complex query scenarios.
Missing out-of-the-box support for advanced ORM features like built-in migrations, real-time capabilities, or sophisticated caching, which are common in larger ecosystems.