loopback-connector-sqlite-next

LoopBack Connector for SQLite3 Database. LoopBack is an API Mgmt/MBaas platform built on top of express by StrongLoop. It supports the notion of connectors to connect to databases, restful web services, soap web services etc.

Usage no npm install needed!

<script type="module">
  import loopbackConnectorSqliteNext from 'https://cdn.skypack.dev/loopback-connector-sqlite-next';
</script>

README

loopback-connector-sqlite Build Status

LoopBack is a highly-extensible, open-source Node.js framework that enables you to create dynamic end-to-end REST APIs with little or no coding. It also enables you to access data from major relational databases, MongoDB, SOAP and REST APIs.

loopback-connector-sqlite is the SQLite3 connector module for loopback-datasource-juggler.

Checkout wiki pages to get updated information about this connector and how to use it with a LoopBack Application to create an API.

Basic usage

Installation

Install the module using the command below in your projects root directory:

npm i loopback-connector-sqlite

You will require loopback-datasource-juggler and node-sqlite3 modules for using this connector. The SQLite3 database can be configured to operate in 2 ways: with a DB file name or with an anonymous in-memory DB. This connector needs 2 configuration parameters:

  • file_name(string): A file name for SQLite DB file. It can have any string value for file based SQLite usage or null for in-memory usage.
  • debug(boolean): Used for disabling and enabling logging.

A DataSource with basic settings can be defined as shown below:

var DataSource = require('loopback-datasource-juggler').DataSource;
var dataSource = new DataSource(require('../index'), {
  file_name: 'dev.sqlite3',
  debug: false
});

Checkout examples folder to get the idea of basic usage. Run the examples from the root directory as follows:

node examples/[example_file]

SQLite3 configuration for tests

The .loopbackrc file holds the settings for the tests. It's in JSON format and has following content:

  • For file based SQLite testing
{
  "sqlite": {
    "test": {
      "file_name": "test.sqlite3",
      "debug": false
    }
  }
}
  • For anonymous in-memory SQLite testing
{
  "sqlite": {
    "test": {
      "file_name": null,
      "debug": false
    }
  }
}

The file_name is the name of the sqlite3 DB file, which will be created, or, used if already present. The debug value is to set debugging mode.

Running the tests

  • execute npm install for installing all the dependencies.
  • execute npm test to run all the tests.