Mercury is a set of utilities to build API connectors in a breeze. (WIP)
As a developer tasked with pulling third-party API data and integrating it into applications, I have found that not all APIs are created equal. The sea of subtle differences and methods that you have to brawl against when integrating is the reason why Mercury was created. Although different, most APIs respect (or at least try) some common concepts, and the fact that a one-size-fits-all approach is not achievable is the core ideology behind what Mercury tries to overcome.
Mercury consists of 3 core parts: Authenticate, Gather and Stream. Each of these parts is a collection of highly flexible and composable utility functions that will provide you a common and simple way of consuming most of the concepts that won't common code away.
Common structure for describing, consuming, validating and refreshing credentials from third-party APIs.
work in progress
Functions for consuming pagination, overcoming rate limits and quotas, requesting large datasets in a memory-efficient manner.
work in progress
Simple utilities to harness the power of NodeJS Streams in the context of pulling, transforming and pushing data from APIs.
work in progress