Awesome Open Source
Awesome Open Source


Build Status Coverage Status npm package version Package Quality Code Quality: Javascript Total Alerts

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)

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!


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

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Javascript (1,539,019
Nodejs (55,503
Mysql (12,557
Graphql (8,432
Postgresql (8,047
Sql (7,338
Rest (4,155
Orm (2,117
Sqlite3 (1,922
Oracle (1,189
Ldap (681
Activerecord (643
Active Directory (478
Related Projects