New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

trembita

Package Overview
Dependencies
Maintainers
1
Versions
39
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

trembita

Request wrapper core for consuming third party services

1.2.28
Source
npm
Version published
Weekly downloads
3
-50%
Maintainers
1
Weekly downloads
 
Created
Source

trembita-js

GitHub Actions Status Coverage Status JavaScript Style Guide: Good Parts npm version

Request wrapper core for consuming third party services.

Whenever you need to communicate with third party API to get or save data from own codebase, you would have to perform a set of common steps such as login, query, etc. Trembita.js is doing the same by abstracting the innards of the actual REST calls to third-party API and exposing only the developer relevant details. Trembita.js supports plugins which are API connectors that are exposing methods for API communication. Each plugin is describing another third-party service. It performs these commonly used functions - creates requests, parses responses, handles errors etc.

The goal of this module is not only to provide you with a simple interface but the implementation of commonly used tools out of the box. This is a core module to reuse with plugins each for a different third-party service.

Trembita API wrapper plugin lets you call itself instead of the API directly. Well what happens if you want to change from one API to another? Now you have to rewrite ALL of your code. If you used a wrapper then all you have to do is change the wrapper and you are done.

Table of Contents

Install

Using npm:

npm install trembita

Using yarn:

yarn add trembita

Usage

Trembita is not supposed to be used directly, rather than to develop plugins/clients.

In order you can use a third party service by implementing your plugin, make sure you fill the next requirements:

  • Extend Trembita module.
  • Construct the plugin by implementing the properties inherited from Trembita module.
  • Define the methods that contains the logic that expose third party library logic you want to use.

One example of usage would be:

const clientOptions = {
  headers: {
    header1: 'xxx',
    header2: 'yyy'
  },
  endpoint: 'http://serviceapi.com'
};

const MyAPIClient = class MyAPIClient extends Trembita {
  constructor(options) {
    super(...arguments);

    this.getData = paramsQueryString => {
      const params = {
        url: `api/path/`,
        qs: paramsQueryString,
        expectedCodes: [200, 401, 403, 404],
        headers: {
          header1: this.header1,
          header2: this.header2
        }
      };
      return this.request(params);
    };
  }
};

const client = new MyAPIClient(clientOptions);

Contribute

See the contribute file!

License

MIT © 2018

Keywords

3d party API

FAQs

Package last updated on 28 Sep 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts