NakamaStream Lib is a library created by NakamaStream to facilitate the integration of our services and APIs into your projects. This tool allows you to access essential functionalities quickly and easily.
- Easy Use of the Library: Intuitive access to the functions and services you need.
- Quick Integration: Access multiple services through a single library.
- Comprehensive Documentation: Guides and examples to help you get started quickly.
To install NakamaStream Lib, simply use npm:
npm install nakamastream-lib
The following modules are currently available in NakamaStream Lib:
const AnimesRecent = require('./lib/AnimesRecent');
const AnimesAll = require('./lib/AnimesAll');
const CaptchaService = require('./lib/auth/CaptchaService');
module.exports = {
AnimesRecent,
AnimesAll,
CaptchaService
};
-
Description: Performs a GET request to the API to retrieve a list of recent animes. This function adheres to a defined rate limit, ensuring that requests to the API are not made more frequently than allowed.
-
Returns: A promise that resolves to an array of objects representing the recent animes.
-
Errors: Throws an error if the rate limit is exceeded or if there is an issue fetching the animes.
-
Example:
const recentAnimes = await animesRecent.fetchRecentAnimes(); console.log(recentAnimes);
-
Description: Retrieves information about the last uploaded anime, if there has been a new one since the last fetch.
-
Returns: An object containing information about the last uploaded anime or null if there are no new animes.
-
Example:
const lastAnime = animesRecent.getMostRecentUploadedAnime(); console.log(lastAnime);
-
Description: Performs a GET request to the API to retrieve the complete list of animes. This method adheres to a defined rate limit to prevent too frequent requests to the API.
-
Returns: A promise that resolves to an array of objects representing all animes.
-
Errors: Throws an error if the rate limit is exceeded or if there is an issue fetching the animes.
-
Example:
try { const allAnimes = await animesAll.fetchAllAnimes(); console.log(allAnimes); } catch (error) { console.error(error.message); }
-
Description: Searches for animes by title in the cached data.
-
Parameters:
query
(string): The search term to filter animes by title.
-
Returns: An array of anime objects that match the search term. Returns an empty array if no cache is available.
-
Example:
const results = animesAll.searchAnimes('Death Note'); console.log(results);
-
Description: Retrieves the cached anime data without making a new API request.
-
Returns: The cached array of anime objects or null if no cache exists.
-
Example:
const cachedData = animesAll.getCachedAnimes(); if (cachedData) { console.log('Using cached data:', cachedData); }
Fetches a new captcha from the API.
Returns: Promise<Object>
- A promise that resolves to the captcha data.
Example:
try {
const captcha = await captchaService.getNewCaptcha();
console.log('Captcha obtained:', captcha);
} catch (error) {
console.error('Error fetching captcha:', error.message);
}
Handles errors from API requests.
-
Parameters:
error
(Error)
: The error object thrown during the request.- Throws: Throws a more descriptive error based on the response.
-
Example: This method is called internally within
getNewCaptcha()
and does not need to be called directly.