OpenRecord alternatives and similar modules
Based on the "ODM / ORM" category.
Alternatively, view OpenRecord alternatives based on common mentions on social networks and blogs.
-
SheetJS js-xlsx
๐ SheetJS Spreadsheet Data Toolkit -- New home https://git.sheetjs.com/SheetJS/sheetjs -
Sequelize
Feature-rich ORM for modern Node.js and TypeScript, it supports PostgreSQL (with JSON and JSONB support), MySQL, MariaDB, SQLite, MS SQL Server, Snowflake, Oracle DB (v6), DB2 and DB2 for IBM i. -
TypeORM
ORM for TypeScript and JavaScript. Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, SAP Hana, WebSQL databases. Works in NodeJS, Browser, Ionic, Cordova and Electron platforms. -
Mongoose
MongoDB object modeling designed to work in an asynchronous environment. -
RxDB
A fast, offline-first, reactive database for JavaScript Applications https://rxdb.info/ -
Bookshelf
A simple Node.js ORM for PostgreSQL, MySQL and SQLite3 built on top of Knex.js -
Waterline
An adapter-based ORM for Node.js with support for mysql, mongo, postgres, mssql (SQL Server), and more -
MikroORM
TypeScript ORM for Node.js based on Data Mapper, Unit of Work and Identity Map patterns. Supports MongoDB, MySQL, MariaDB, PostgreSQL and SQLite databases. -
slonik
A Node.js PostgreSQL client with runtime and build time type safety, and composable SQL. -
@Sugoi\orm
SugoiJS ORM module typescript based - Simple solution for object handling with predefined lifecycle
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of OpenRecord or a related project?
README
[OpenRecord](docs/logo.png)
OPENRECORD is an ActiveRecord inspired ORM for nodejs.
Currently it supports the following databases/datastores: SQLite3, MySQL, Postgres, Oracle, REST and LDAP (+ ActiveDirectory)
If you want to build a GraphQL endpoint for any of these databases, OPENRECORD has some built in features to support you!
As the name imply, it's open and very easy to extend. The whole package was build that way.
It has a lot of features, just take a look at the docs!
Usage example
Here is an example how to get a single post
from an existing sqlite3 file (by primary key).
const Store = require('openrecord/store/sqlite3')
const store = new Store({
file: './my-posts-db.sqlite3',
autoLoad: true
})
store.ready(async () => {
const post = await store.Model('Post').find(1)
console.log(post)
})
You don't have to define your model (optional) and you also don't have to define your model's attributes (optional).
Take a look at the docs to get started!
Contributing
If you've found a bug please report it via the issues page.
Before you submit a pull request, please make sure all tests still pass.
Sponsored by digitalbits.at