1.0.3 • Published 4 months ago

apiflux v1.0.3

Weekly downloads
-
License
ISC
Repository
github
Last release
4 months ago

ApiFlux 🚀

ApiFlux is a powerful and lightweight JavaScript library for making API requests with ease. It provides built-in error handling, retry logic, and support for query parameters, making HTTP requests simpler and more reliable.


Basic Usage 🚀

smartFetch(url, params, options)

  • url (string) - The API endpoint to request data from.
  • params (object) - Query parameters to append to the URL. Default is an empty object.
  • options (object) - Additional fetch options, including:
    • method (string) - HTTP method (GET, POST, PUT, DELETE, etc.). Default is 'GET'.
    • retries (number) - Number of retry attempts for failed requests. Default is 3.
    • retryDelay (number) - Delay between retry attempts in milliseconds. Default is 1000.

Example:

import smartFetch from 'apiflux';

const fetchData = async () => {
  const data = await smartFetch('https://catfact.ninja/fact');
  console.log(data);
};

fetchData();

Example with query parameter:

const fetchDataWithParams = async () => {
  const data = await smartFetch('https://api.example.com/search', { q: 'javascript' });
  console.log(data);
};

fetchDataWithParams();

Example with Post Request:

const postData = async () => {
  const data = await smartFetch('https://api.example.com/create', {}, {
    method: 'POST',
    body: JSON.stringify({ name: 'John', age: 30 }),
    headers: {
      'Content-Type': 'application/json'
    }
  });
  console.log(data);
};

postData();

Features ✨

  • Universal HTTP Support: Works with all HTTP methods (GET, POST, PUT, DELETE, etc.).
  • Built-in Error Handling: Automatically detects and handles server and network errors.
  • Retry Mechanism: Retries failed requests with customizable retry attempts and delay.
  • Query Parameters Made Easy: Effortlessly attach query parameters to your requests.
  • Smart Response Handling: Automatically parses JSON or returns plain text based on response type.

Installation ⬇️

Install ApiFlux using npm:

npm install apiflux