node package manager

lib

StdLib: Standard Library for Microservices Node.js Bindings

StdLib Node.js Bindings

StdLib Setup | Node | Python | Ruby | Web

Basic Node bindings for StdLib service accession (Node 4+).

Used to interface with services built using StdLib and the StdLib Command Line Tools.

The lib package is available on npm: lib and operates as zero-dependency interface to run StdLib functions. This means that you can utilize any service on StdLib without installing any additional dependencies, and when you've deployed services to StdLib, you have a pre-built Node.js SDK --- for example;

const lib = require('lib');
lib.yourUsername.hostStatus({name: 'Dolores Abernathy'}, (err, result) => {
 
  // handle result 
 
});

To discover StdLib services, visit https://stdlib.com/search. To build a service, get started with the StdLib CLI tools.

Installation

To install locally in a project (StdLib service or otherwise), use;

$ npm install lib --save

Usage

const lib = require('lib');
 
// [1]: Call "stdlib.reflect" function, the latest version, from StdLib 
lib.stdlib.reflect(0, 1, {kwarg: 'value'}, (err, result) => {});
 
// [2]: Call "stdlib.reflect" function from StdLib, with "dev" environment 
lib.stdlib.reflect['@dev'](0, 1, {kwarg: 'value'}, (err, result) => {});
 
// [3]: Call "stdlib.reflect" function from StdLib, with "release" environment 
//      This is equivalent to (1) 
lib.stdlib.reflect['@release'](0, 1, {kwarg: 'value'}, (err, result) => {});
 
// [4]: Call "stdlib.reflect" function from StdLib, with specific version 
//      This is equivalent to (1) 
lib.stdlib.reflect['@0.0.1'](0, 1, {kwarg: 'value'}, (err, result) => {});
 
// [5]: Call functions within the service (not just the defaultFunction) 
//      This is equivalent to (1) when "main" is the default function 
lib.stdlib.reflect.main(0, 1, {kwarg: 'value'}, (err, result) => {});
 
// Valid string composition from first object property only: 
lib['stdlib.reflect'](0, 1, {kwarg: 'value'}, (err, result) => {});
lib['stdlib.reflect[@dev]'](0, 1, {kwarg: 'value'}, (err, result) => {});
lib['stdlib.reflect[@release]'](0, 1, {kwarg: 'value'}, (err, result) => {});
lib['stdlib.reflect[@0.0.1]'](0, 1, {kwarg: 'value'}, (err, result) => {});
lib['stdlib.reflect.main'](0, 1, {kwarg: 'value'}, (err, result) => {});
lib['stdlib.reflect[@dev].main'](0, 1, {kwarg: 'value'}, (err, result) => {});
lib['stdlib.reflect[@release].main'](0, 1, {kwarg: 'value'}, (err, result) => {});
lib['stdlib.reflect[@0.0.1].main'](0, 1, {kwarg: 'value'}, (err, result) => {});

Local Usage

To use StdLib services locally (from within a StdLib function), use the "string composition" method and begin your service path with a period;

lib['.otherFunction']({key: 'X'}, (err, result) => {});

This functionality exists, so if needs be, you can directly interface with other functions within a StdLib service when testing locally (i.e. MapReduce usage). Please note that local functions always execute in the same context and thread as the caller, meaning you will not get the scalability benefits of calling the function remotely, however latency is significantly reduced.

Additional Information

To learn more about StdLib, visit stdlib.com or read the StdLib CLI documentation on GitHub.

You can follow the development team on Twitter, @StdLibHQ

StdLib is © 2016 - 2017 Polybit Inc.