tutkli / jikan-ts

Jikan API wrapper for Typescript and NodeJS with built in typings.

Home Page:https://tutkli.github.io/jikan-ts/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

jikan-ts

jikan-ts-890w

Language Shield GitHub License Code Style Shield NPM Downloads npm bundle size

Jikan API wrapper for Typescript and NodeJS with build in typings.

Features

  • πŸ’… Fully typed
  • β™» Http Request Cache
  • πŸ“„ Logging
  • πŸ“¦ ESM with tree shaking support

Installation

npm install --save @tutkli/jikan-ts axios axios-cache-interceptor
# or
yarn add @tutkli/jikan-ts axios axios-cache-interceptor

Example

Using a specific client, like AnimeClient:

import { AnimeClient, JikanResponse, Anime } from '@tutkli/jikan-ts';

const animeClient = new AnimeClient();

animeClient
  .getAnimeById(1)
  .then((jikanResponse: JikanResponse<Anime>) => {
    /* ... */
  })
  .catch(error => console.error(error));

Or, using the JikanClient:

import { JikanClient, JikanResponse, Anime } from '@tutkli/jikan-ts';

const jikanClient = new JikanClient();

jikanClient.anime
  .getAnimeById(1)
  .then((jikanResponse: JikanResponse<Anime>) => {
    /* ... */
  })
  .catch(error => console.error(error));

Client configuration

Cache Configuration

Jikan-ts uses axios-cache-interceptor to store request results. To use a specific configuration, pass the cacheOptions argument when instantiating a client:

import { AnimeClient } from '@tutkli/jikan-ts';

const animeClient = new AnimeClient({
    cacheOptions: { ... } // axios-cache-interceptor options
  }
);

For more information, check out the axios-cache-interceptor Documentation.

Logging

To enable logging, pass the enableLogging argument as true.

import { AnimeClient } from '@tutkli/jikan-ts';

const animeClient = new AnimeClient({
  enableLogging: true,
});

Available Clients

  • AnimeClient
  • CharactersClient
  • GenresClient
  • MangaClient
  • TopClient
  • SchedulesClient
  • SeasonsClient
  • JikanClient (Main client)

Leave you feedback

About

Jikan API wrapper for Typescript and NodeJS with built in typings.

https://tutkli.github.io/jikan-ts/

License:MIT License


Languages

Language:TypeScript 99.9%Language:Shell 0.1%