@agile-ts/api

Promise based HTTP request API for Node.js

Usage no npm install needed!

<script type="module">
  import agileTsApi from 'https://cdn.skypack.dev/@agile-ts/api';
</script>

README

[WIP] API

Promise based HTTP request API for Node.js

npm version GitHub License npm monthly downloads npm total downloads npm minified size

⏰ Short Example

// Let't create our API
const api = new API({
  baseURL: 'https://myapp.com', // Base Route to the Host
  timeout: 10000, // After which amount of time a request times out
  options: { credentials: 'include' } // Http/s Request Options from type RequestInit
});

// Now we can create our first Request to 'https://myapp.com/hello'
const response = await api.get('/hello');
console.log(response);
/* 
  {
      data: {hello: "Jeff"}; // Response Data
      timedout: false; // If Request has timedout
      status: 200; // Response Status Code
      raw: Response; // Raw Response from type Response
      type: "application/json"; // Response Type
  }
*/

❓ Why Agile Api

🚅 Straightforward

Write minimalistic, boilerplate free code that captures your intent.
For instance

  • Automatic transform for JSON data
  • Configurable Timeout

🎯 Easy to Use

Learn the powerful and simple tools of Agile Api in a short amount of time.

🍃 Lightweight

Agile Api has an unpacked size of 2kB and 0 external dependencies.

⬇️ Installation

npm install @agile-ts/api

The api package is an extension of AgileTs and doesn't work without the core package, which functions as the brain of AgileTs and is indispensable. Unfortunately, we can't combine each core with api version. Therefore, we have created a table which shows which versions fit together without restrictions.

@agile-ts/api @agile-ts/core NPM Version
v0.0.7+ v0.0.7+ v6+
v0.0.6 v0.0.3 - v0.0.6 v6+
Other Versions aren't supported anymore

📄 Documentation

The Agile Api Docs are located here