seneca-service-loader

1.5.1 • Public • Published

Seneca

A Seneca.js Structure Plugin

seneca-service-loader

npm version Dependency Status

Lead Maintainer: Tobias Gurtzick

seneca-service-loader

This module is a plugin for the Seneca framework. It provides you with capabilities to cleanly structure your services.

Usage

To use the service-loader first install the module via

npm i -s seneca-service-loader

Now you can require the plugin and use it, like in the following example:

'use strict';
 
const Service = require('seneca-service-loader');
const seneca = require('seneca');
 
const service = new Service(seneca);
service
  .register([
    {
      register: require('hapi-mariadb'),
      options: {
        mariasql: config.database,
        connectionCount: 8,
        poolAsPromised: true
      }
    }
  ])
  .then(() => service.load());

Now it will allow you to load any file from lib/controllers/*.js. A service looks like this:

'use strict';
 
module.exports = {
  pin: 'my:pin,command:name':,
  request: async (request, data) => {
    return null;
  }
}

The example provided here also registers a hapi plugin. Quite simple plugins for hapi do work with this module. Like most database modules. This is intended to produce a better overall experience, by accessing APIs everywhere in the same way.

Package Sidebar

Install

npm i seneca-service-loader

Weekly Downloads

32

Version

1.5.1

License

MIT

Unpacked Size

8.97 kB

Total Files

6

Last publish

Collaborators

  • wzrdtales