An Express.js microservice that translates AniList IDs to MyAnimeList IDs and generates dynamically formatted streaming URLs across configured media servers.
Deploy Flixcloud Lite to Vercel:
- Automatic ID Mapping: Converts AniList IDs to MyAnimeList IDs via the
ani.zipmapping API, falling back to the AniList ID if the request fails. - Template Placeholder Parsing: Automatically replaces
{ani},{mal},{ep}, and{lang}variables in configured server URL templates. - Multi-Audio Output: Generates separate URL listings for both subtitled (
sub) and dubbed (dub) streams in a single response.
- Node.js v14 or higher (with ES Module support enabled)
expressandaxiospackages
Install the required dependencies:
npm installDefine your video server templates inside the servers array in the index.js file using supported placeholder tags ({ani}, {mal}, {ep}, {lang}):
if you don't know any servers use these:
SERVER LIST
const servers = [
{
name: "ServerAlpha",
url: "https://provider-a.com/embed/{ani}/{ep}?lang={lang}"
},
{
name: "ServerBeta",
url: "https://provider-b.com/v/{mal}/{ep}/{lang}"
}
];Start the application:
node index.jsBy default, the server runs at http://localhost:4000.
GET /:animeid/:epno
-
URL Parameters:
animeid(number): The AniList ID of the anime.epno(number): The target episode number.
-
Sample Request:
GET http://localhost:4000/21/1 -
Sample Response:
{ "anilistId": 21, "episode": 1, "servers": { "sub": { "ServerAlpha": "https://provider-a.com/embed/21/1?lang=sub", "ServerBeta": "https://provider-b.com/v/21/1/sub" }, "dub": { "ServerAlpha": "https://provider-a.com/embed/21/1?lang=dub", "ServerBeta": "https://provider-b.com/v/21/1/dub" } } }