Socket
Socket
Sign inDemoInstall

trembita

Package Overview
Dependencies
50
Maintainers
1
Versions
39
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    trembita

Request wrapper core for consuming third party services


Version published
Weekly downloads
15
decreased by-53.12%
Maintainers
1
Install size
5.25 MB
Created
Weekly downloads
 

Changelog

Source

1.2.29 (2022-09-06)

chore

  • deps: bump validator from 13.5.2 to 13.7.0 (3e78320)
  • update readme (#301) (40516fa)

Readme

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

FAQs

Last updated on 06 Sep 2022

Did you know?

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

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc