Wyzie Lib is a package made for easily implementing Wyzie Subs into your project without all the fuss. Read our source code!
2.0 Out Now!
- Simple: Just one function for searching subtitles using Wyzie Subs API.
- Fast: This package was written in Vite with TypeScript, so it's fast and reliable.
- Open-Source: The API and package are open-source.
NPM
npm install wyzie-lib
PNPM
pnpm install wyzie-lib
Yarn
yarn add wyzie-lib
import { type SubtitleData, searchSubtitles } from "wyzie-lib";
// IMDB is faster then TMDB due to less API calls behind the scenes
const data: SubtitleData[] = await searchSubtitles({ tmdb_id: 286217 });
console.log(data[0]); // Prints the object of the first subtitle provided in the search
Parameter | Name | Description |
---|---|---|
tmdb_id - number | TmdbId | The TMDB ID of the movie or TV show. (tmdb_id or imdb_id is required) |
imdb_id - number | ImdbId | The IMDB ID of the movie or TV show. (imdb_id or tmdb_id is required) |
format - string | format | The file format of the subtitles returned. (srt, ass, vtt, txt, sub, mpl, webvtt, dfxp) |
season - number | season | Disired season of subtites (this requires episode parameter aswell) |
episode - number | episode | The episode of the given season. |
language - string | language | The ISO 3166 code of the provided subtitles. |
hi - boolean | isHearingImpaired | A boolean indicating if the subtitles are hearing impaired. |
- SearchSubtitlesParams: All valid parameters recognized by the API.
- QueryParams: All parameters (optional and required) available for the wyzie-subs API.
- SubtitleData: All returned values from the API with their respective types.
interface SearchSubtitlesParams {
// Parameters for the searchSubtitles() function
tmdb_id?: number; // Parsed automatically by the API to recognize if its TMDB or IMDB
imdb_id?: number; // Parsed automatically by the API to recognize if its TMDB or IMDB
season?: number;
episode?: number; // Season is required if episode is provided
language?: string; // ISO 3166 code
format?: string; // Subtitle file format
hi?: boolean; // If the subtitle is hearing impaired
}
interface QueryParams {
// Parameters for the wyzie-subs API
id: string; // (Required) The TMDB or IMDB ID of the movie or TV show
season?: number; // The season of the TV show (Required if episode is provided)
episode?: number; // The episode of the TV show (Required if season is provided)
language?: string; // ISO 3166 code
format?: string; // Subtitle file format
hi?: boolean; // If the subtitle is hearing impaired
}
type SubtitleData = {
// Data returned by the API
id: string; // Unique ID of the subtitle from opensubtitles
url: string; // Direct download link of the subtitle
format: string; // Subtitle file format
isHearingImpaired: boolean; // If the subtitle is hearing impaired
flagUrl: string; // Flag of the language
media: string; // Media name of the subtitle
display: string; // Actual name of the language
language: string; // ISO 3166 code
};
Created by BadDeveloper with 💙