@norest/cli

0.3.6 • Public • Published

Install

Get it from npm:

npm i @norest/cli -g

Getting started

Spin up a default server (file system storage):

norest

Configuration

Or configure it to your needs:

Example to start with authentication enabled:

norest serve --auth.enabled true

Example to start with a Mongo DB:

norest serve --connector.name mongodb --connector.url "mongodb://127.0.0.1:27017/test"

Note: NoREST only works with mongodb Sharding, single mongodb nodes are not supported.

Configuration file

You could also create a .norestrc.json, yaml or .js in the root directory and store/export the configuration there.

{
  "connector": {
    "name": "mongodb",
    "url": "mongodb://127.0.0.1:27017/test",
    "collection": "norest",
    "createCollectionNotExisting": true
  },
  "websocket": {
    "enabled": true
  },
  "auth": {
    "cookieName": "auth",
    "userProperty": "sub"   
  },
  "path": "api",
  "fixed": false
}

By default the noREST nestjs implementation supports two connectors: mongoDB and file. File is the default configuration but only suitable for non high load.

Plugins

Plugins can be added to an Javascript configuration file only. They are based on the module infrastructure of Nestjs. Configuration can be passed to the calling register() function.

const AuthProxyModule = require('@norest/plugin-auth-proxy').AuthProxyModule;

module.exports = {
  plugins: [AuthProxyModule.register({
    github: {
      client_id: '22e26fceea63a8ace68f',
      redirect_uri: 'http://localhost:3031/github/auth',
      client_secret: 'xyz',
    }
  })]
};

There is currently only two official plugin:

Env variables

Each of the mentioned configuration can be also be parsed as a ENV var. Use the prefix NOREST_ and replace dots with underscores then:

env.NOREST_AUTH_COOKIENAME = "authorization"

Dependents (0)

Package Sidebar

Install

npm i @norest/cli

Weekly Downloads

1

Version

0.3.6

License

MIT

Unpacked Size

321 kB

Total Files

13

Last publish

Collaborators

  • janhommes