Skip to content
This repository has been archived by the owner on Jan 17, 2023. It is now read-only.

SDK client plugin for bi-service based apps and a SDK package generator

License

Notifications You must be signed in to change notification settings

BohemiaInteractive/bi-service-sdk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

59bbfba · Jul 31, 2018
Jul 23, 2018
Jul 26, 2018
Jul 23, 2018
Aug 11, 2017
Apr 28, 2017
Jul 23, 2018
Jul 31, 2018
Oct 6, 2017
Jul 30, 2018
Jul 30, 2018
Jun 25, 2018
Jul 31, 2018

Repository files navigation

Build Status

Peer Dependencies

  • bi-service >= 1.0.0
  • bi-service-doc >= 2.0.0

Generating a SDK client npm package for a bi-service based application

Requires bi-service-doc package to be plugged in along the bi-service-sdk plugin.
Load them at bottom of your index.js:

//index.js
//...
const Service = require('bi-service');
const service = new Service(/*...*/);
module.exports = service;
//...

//Load the plugins
require('bi-service-doc');
require('bi-service-sdk');

Make sure that your project's index.js exports the Service instance object.
and then just call the build:sdk command:

> cd ./path/to/my/bi-service-project
#builds SDKs for all supported apps (zip files are written to cwd)
project/root> ./node_modules/.bin/bi-service build:sdk

#view available cmd options
project/root> ./node_modules/.bin/bi-service build:sdk --help

An alternative way is to use standalone bi-service-sdk executable and provide it with API specification source from which SDKs are generated:

# generates SDKs into zip packages in cwd
> bi-service-sdk --specs "http://docs.service.com/specs" #url must return json in format {"v1.0": {/*Open API 2.0/3.0 specs*/}}

> # eventually
> ./node_modules/.bin/bi-service build:sdk --help
> ./node_modules/.bin/bi-service-sdk --help
> ./node_modules/.bin/bi-service-doc --help

npm package version schema of generated SDKs

example:
bi-service-sdk: 1.0.0
bi-depot: 0.5.0

bi-depot-private-sdk: 1.0.0-x.0.5.0 bi-depot-public-sdk: 1.0.0-x.0.5.0

Defining a generated SDK module as a npm dependency

{
    "dependencies": {
        "bi-depot-private-sdk": "^1.0.0-x.0.5.0 <1.0.0-x.1.0.0"
    }
}

The above version restriction will match for example:

  • 1.0.0-x.0.5.0
  • 1.0.0-x.0.6.0
  • 1.0.0-x.0.6.1

but will NOT match:

  • 1.0.0-x.1.0.0
  • 1.0.1-x.0.5.0
  • 1.1.0-x.0.5.0
  • 2.1.0-x.0.5.0

About

SDK client plugin for bi-service based apps and a SDK package generator

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published