mirror of
https://github.com/Shineii86/MiruroAPI.git
synced 2026-10-22 10:15:10 +00:00
- Full index.html rewrite with AniKotoAPI-style features: * Canvas particle effects (cyan particles) * Scroll-reveal animations (IntersectionObserver) * Animated stat counters (count up on scroll) * Infinite scrolling marquee (8 feature badges) * Live interactive API console (5 presets: Search, Trending, Episodes, Info, Health) * Sidebar endpoint explorer (16 endpoints, multi-language tabs: cURL/JS/Python) * 4 interactive playground cards (Search, Info, Episodes, Trending) * Custom scrollbar, JetBrains Mono font * 4-column grid footer with API/Resources/Legal * Fixed header with scroll-aware glass blur * Ambient orb gradient animations * CTA section with gradient overlay - Added public/404.html (glitch animation error page) - Added public/manifest.json (PWA, theme: #38bdf8) - Added public/robots.txt (Allow /, Disallow /api) - Added public/sitemap.xml (4 URLs) - Added public/tos.html (13 sections) - Added public/privacy.html (8 sections) - Added .env.example, CONTRIBUTING.md, LICENSE, render.yaml, test.js - Added docs/ (5 files: index, endpoints, streaming, examples, architecture) - Updated server.js: clean URL routes (/tos, /privacy), 404.html fallback - Updated package.json: devDependencies nodemon, repository, dev script - All branding: AniKotoAPI → MiruroAPI, cyan color scheme (#38bdf8)
92 lines
2.5 KiB
Markdown
92 lines
2.5 KiB
Markdown
# MiruroAPI Documentation
|
|
|
|
> Free REST API for anime streaming data. 18 endpoints, 12 providers, M3U8 URLs. No API key required.
|
|
|
|
## Overview
|
|
|
|
MiruroAPI is a free, open-source REST API that provides anime data by aggregating from AniList GraphQL and Miruro streaming providers. It's built with Node.js and Express, and deployed on Vercel.
|
|
|
|
**Base URL:** `https://mirurotvapi.vercel.app/api`
|
|
|
|
## Quick Start
|
|
|
|
```bash
|
|
# Search for anime
|
|
curl "https://mirurotvapi.vercel.app/api/search?query=naruto"
|
|
|
|
# Get anime info
|
|
curl "https://mirurotvapi.vercel.app/api/info/20"
|
|
|
|
# Get episodes
|
|
curl "https://mirurotvapi.vercel.app/api/episodes/20"
|
|
```
|
|
|
|
**Live Response — Search:**
|
|
|
|
```json
|
|
{
|
|
"success": true,
|
|
"results": {
|
|
"page": 1,
|
|
"perPage": 20,
|
|
"total": 5000,
|
|
"hasNextPage": true,
|
|
"results": [
|
|
{
|
|
"id": 20,
|
|
"title": { "romaji": "NARUTO", "english": "Naruto" },
|
|
"coverImage": { "large": "https://s4.anilist.co/file/..." },
|
|
"format": "TV",
|
|
"episodes": 220,
|
|
"status": "FINISHED",
|
|
"averageScore": 80
|
|
}
|
|
]
|
|
}
|
|
}
|
|
```
|
|
|
|
## Features
|
|
|
|
- **18 Endpoints** — Search, info, episodes, streaming, characters, relations, and more
|
|
- **12 Streaming Providers** — M3U8 URLs with resolution, codec, fansub info
|
|
- **No API Key** — Just make requests, no registration needed
|
|
- **In-Memory Cache** — 1-5 minute TTL for fast responses
|
|
- **CORS Enabled** — Access from any domain
|
|
- **JSON Responses** — Standardized `{success, results}` format
|
|
|
|
## Documentation
|
|
|
|
- [API Endpoints Reference](endpoints.md) — Complete endpoint documentation with real responses
|
|
- [Streaming Flow Guide](streaming.md) — How to get stream URLs step by step
|
|
- [Code Examples](examples.md) — cURL, JavaScript, Python (all tested and working)
|
|
- [Architecture](architecture.md) — Project structure and design decisions
|
|
|
|
## Response Format
|
|
|
|
All endpoints return JSON in this format:
|
|
|
|
```json
|
|
{
|
|
"success": true,
|
|
"results": { ... }
|
|
}
|
|
```
|
|
|
|
Error responses:
|
|
|
|
```json
|
|
{
|
|
"success": false,
|
|
"message": "Error description"
|
|
}
|
|
```
|
|
|
|
## Rate Limiting
|
|
|
|
Rate limiting is enforced at 100 requests per minute per IP address. The API also uses a 1-5 minute in-memory cache. Repeated requests for the same data will be served from cache.
|
|
|
|
## Disclaimer
|
|
|
|
This API is for **educational purposes only**. It fetches data from AniList GraphQL and Miruro streaming providers. We are not affiliated with or endorsed by Miruro. All content belongs to its respective owners.
|