Skip to content

voidbornfr/voidanime

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🎬 VoidAnime

A modern, feature-rich anime streaming platform built with Next.js, showcasing advanced API integration and data mapping techniques.

Version License Status

Made with ❀️ by Rishab (VoidBorn)


⚠️ Important Notice

This project is for educational and development purposes only.

  • πŸŽ“ Educational Use: Learn how to integrate multiple anime APIs and map data structures
  • πŸ’» Development Reference: Understand API integration patterns and best practices
  • ❌ NOT for Commercial Use: This project is not intended for commercial deployment or profit
  • πŸ“š Learning Resource: Use this as a reference to build your own projects

If you use this project or its code, please provide proper attribution to Rishab (VoidBorn).


πŸ“‹ Table of Contents


✨ Features

  • πŸŽ₯ Multiple Anime Sources - Seamlessly integrate with AniWatch, Gogoanime, Hianime, and AnimeParhe
  • πŸ” AniList Integration - Sync your anime list with AniList OAuth
  • 🎨 Beautiful UI - Modern, responsive design with smooth Framer Motion animations
  • πŸ“± Mobile Friendly - Fully responsive on all devices
  • πŸ”„ Persistent Playback - Resume watching from where you left off
  • πŸŒ™ Dark Mode - Eye-friendly dark theme by default
  • ⚑ Fast Performance - Optimized streaming with HLS support
  • 🎯 Advanced Search - Find anime with filters and sorting
  • πŸ“Š User Tracking - Keep track of watched anime with MongoDB
  • 🎬 Multiple Players - ArtPlayer with Chromecast support
  • οΏ½ API Mapaping - Learn how to map and integrate multiple anime APIs
  • πŸ’Ύ Redis Caching - Optimized performance with intelligent caching

πŸ“Έ Screenshots

🏠 UI Preview

Details 1 Details 2 Player 1 Player 2 Player 3 Search 1 Search 2 Features 1 Features 2 Features 3 Settings 1 Settings 2 Settings 3 Settings 4 Settings 5


πŸ› οΈ Tech Stack

Category Technologies
Frontend Next.js 14, React 18, Tailwind CSS, Framer Motion
Backend Next.js API Routes, Node.js
Database MongoDB with Mongoose
Authentication NextAuth.js with AniList OAuth
Video Player ArtPlayer, HLS.js, Vidstack
State Management Zustand
Caching Redis, IORedis
Styling Tailwind CSS, Tailwind Animate
Streaming HLS Protocol, M3U8 Proxy
API Integration Axios, Fetch API

πŸš€ Quick Start

Prerequisites

  • Node.js 18.0 or higher
  • npm or yarn package manager
  • MongoDB account (free tier available)
  • AniList developer credentials
  • Git for version control

Installation Steps

  1. Clone the repository

    git clone <repository-url>
    cd voidanime
  2. Install dependencies

    npm install
    # or
    yarn install
  3. Configure environment variables

    cp .env.example .env.local
    # Edit .env.local with your credentials
  4. Start development server

    npm run dev
    # or
    yarn dev
  5. Open in browser

    http://localhost:3000
    

πŸ”§ Environment Setup

Step 1: AniList OAuth Configuration

Get your credentials from AniList Developer Console

GRAPHQL_ENDPOINT=https://graphql.anilist.co
ANILIST_CLIENT_ID=your_client_id_here
ANILIST_CLIENT_SECRET=your_client_secret_here

How to get AniList credentials:

  1. Visit https://anilist.co/settings/developer
  2. Click "Create New Application"
  3. Fill in the application details
  4. Set redirect URL to: https://your-domain.com/api/auth/callback/AniListProvider
  5. Copy your Client ID and Client Secret

Step 2: NextAuth Configuration

NEXTAUTH_SECRET=generate_a_random_secret_here
NEXTAUTH_URL=http://localhost:3000

Generate NEXTAUTH_SECRET:

# On Linux/Mac
openssl rand -base64 32

# On Windows (PowerShell)
[Convert]::ToBase64String((1..32 | ForEach-Object {Get-Random -Maximum 256}))

Step 3: Proxy & API Configuration

NEXT_PUBLIC_PROXY_URI=http://localhost:3000
CONSUMET_URI=https://consumet-six-alpha.vercel.app
API_URI=https://yumaapi.vercel.app

Step 4: Anime Sources

# AnimeParhe Base URL - Configure your anime source
ANIMEPAHE_BASE_URL=https://animepahe.com

# M3U8 Proxy for HLS streaming (handles CORS)
VITE_PROXY_URL=https://m8u3.vercel.app/m3u8-proxy?url=
VITE_M3U8_PROXY_URL=https://m8u3.vercel.app/m3u8-proxy?url=
NEXT_PUBLIC_EXTERNAL_PROXY_URL=https://m8u3.vercel.app/m3u8-proxy?url=

Step 5: Database Configuration

MONGODB_URI=mongodb+srv://username:[email protected]/?retryWrites=true&w=majority

Setup MongoDB:

  1. Create account at MongoDB Atlas
  2. Create a new cluster (free tier available)
  3. Create a database user with strong password
  4. Get your connection string
  5. Replace username and password with your credentials

Step 6: Deployment URLs

NEXT_PUBLIC_DEV_URL=http://localhost:3000
NEXT_PUBLIC_PRODUCTION_URL=https://your-domain.com

πŸ“‹ Complete .env.local Example

# ============================================
# AniList OAuth Configuration
# ============================================
GRAPHQL_ENDPOINT=https://graphql.anilist.co
ANILIST_CLIENT_ID=your_client_id
ANILIST_CLIENT_SECRET=your_client_secret

# ============================================
# NextAuth Configuration
# ============================================
NEXTAUTH_SECRET=your_generated_secret_here
NEXTAUTH_URL=http://localhost:3000

# ============================================
# NextJS Configuration
# ============================================
NEXT_PUBLIC_PROXY_URI=http://localhost:3000
CONSUMET_URI=https://consumet-six-alpha.vercel.app

# ============================================
# Database Configuration
# ============================================
MONGODB_URI=mongodb+srv://username:[email protected]/?retryWrites=true&w=majority

# ============================================
# Deployment URLs
# ============================================
NEXT_PUBLIC_DEV_URL=http://localhost:3000
NEXT_PUBLIC_PRODUCTION_URL=https://your-domain.com

# ============================================
# Anime Sources
# ============================================
ANIMEPAHE_BASE_URL=https://animepahe.com

# ============================================
# Proxy URLs (for HLS streaming)
# ============================================
VITE_PROXY_URL=https://m8u3.vercel.app/m3u8-proxy?url=
VITE_M3U8_PROXY_URL=https://m8u3.vercel.app/m3u8-proxy?url=
NEXT_PUBLIC_EXTERNAL_PROXY_URL=https://m8u3.vercel.app/m3u8-proxy?url=
API_URI=https://yumaapi.vercel.app

πŸ”Œ API Integration

This project demonstrates advanced API integration and data mapping techniques:

Supported Anime Sources

Source Provider Status Features
AniWatch Consumet βœ… Active Sub/Dub, Multiple Servers
Gogoanime Consumet βœ… Active Sub/Dub, Fast Streaming
Hianime Consumet βœ… Active Sub/Dub, HD Quality
AnimeParhe AnimeParhe API βœ… Active Sub/Dub, Download Links

API Mapping Architecture

AniList (Anime Metadata)
    ↓
    β”œβ”€β†’ Consumet API (Multiple Sources)
    β”œβ”€β†’ AnimeParhe API (Specific Source)
    └─→ Anify API (Fallback)
         ↓
    Episode Data & Streaming URLs
         ↓
    M3U8 Proxy (CORS Handling)
         ↓
    ArtPlayer (Video Playback)

Key Integration Points

  • AniList GraphQL: Fetch anime metadata and user lists
  • Consumet API: Get episodes and streaming sources
  • AnimeParhe API: Alternative source with download support
  • M3U8 Proxy: Handle CORS issues for HLS streams
  • MongoDB: Store user progress and preferences

πŸ“ Project Structure

voidanime/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/
β”‚   β”‚   β”œβ”€β”€ api/
β”‚   β”‚   β”‚   β”œβ”€β”€ animepahe/          # AnimeParhe API routes
β”‚   β”‚   β”‚   β”œβ”€β”€ anilist/            # AniList integration
β”‚   β”‚   β”‚   β”œβ”€β”€ source/             # Episode source handler
β”‚   β”‚   β”‚   └── ...
β”‚   β”‚   β”œβ”€β”€ anime/                  # Anime pages
β”‚   β”‚   β”œβ”€β”€ user/                   # User profile pages
β”‚   β”‚   └── ...
β”‚   β”œβ”€β”€ components/                 # React components
β”‚   β”œβ”€β”€ lib/
β”‚   β”‚   β”œβ”€β”€ animepahe.js           # AnimeParhe functions
β”‚   β”‚   β”œβ”€β”€ Anilistfunctions.js    # AniList integration
β”‚   β”‚   β”œβ”€β”€ kyomu.js               # Kyomu API integration
β”‚   β”‚   └── ...
β”‚   β”œβ”€β”€ utils/                      # Utility functions
β”‚   └── styles/                     # Global styles
β”œβ”€β”€ public/
β”‚   └── preview/                    # Screenshot previews
β”œβ”€β”€ .env.example                    # Environment template
β”œβ”€β”€ package.json                    # Dependencies
└── README.md                       # This file

πŸŽ“ Learning Resources

This project is designed to teach:

  • βœ… API Integration: How to work with multiple anime APIs
  • βœ… Data Mapping: Transform data from different sources into unified format
  • βœ… Authentication: Implement OAuth with NextAuth.js
  • βœ… Streaming: Handle HLS streams and CORS issues
  • βœ… Caching: Optimize performance with Redis
  • βœ… Database Design: MongoDB schema for user data
  • βœ… Next.js Best Practices: API routes, middleware, SSR
  • βœ… React Patterns: State management with Zustand, component composition

πŸ—οΈ Build & Deployment

Build for Production

npm run build
npm start

Docker Deployment

docker-compose up -d

Vercel Deployment

# Install Vercel CLI
npm i -g vercel

# Deploy
vercel

πŸ‘¨β€πŸ’» Credits & Attribution

Created By

Rishab (VoidBorn)

If You Use This Project

Please provide proper attribution:

Built with [VoidAnime](https://github.com/voidbornfr/voidanime) by Rishab (VoidBorn)

Or in your code:

// VoidAnime - API Integration Framework
// Created by Rishab (VoidBorn)
// Educational & Development Use Only

Third-Party Services

  • AniList - Anime metadata and user lists
  • Consumet API - Anime streaming sources
  • AnimeParhe - Anime source provider
  • MongoDB - Database service
  • Vercel - Deployment platform

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

MIT License

Copyright (c) 2025 Rishab (VoidBorn)

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

⚠️ Disclaimer

Educational Purpose Only

This project is created for educational and development purposes only. It demonstrates:

  • How to integrate multiple APIs
  • Data mapping and transformation techniques
  • Building a streaming application architecture
  • Best practices in Next.js and React

Not for Commercial Use

  • ❌ Do not use this project for commercial purposes
  • ❌ Do not deploy this as a public streaming service
  • ❌ Do not monetize content from this application
  • ❌ Do not violate copyright laws

Legal Notice

  • Users are responsible for ensuring they have the right to stream content
  • We do not host any content
  • We are not responsible for any copyright infringement
  • Respect the terms of service of all integrated APIs

Content Rights

  • All anime content belongs to their respective copyright holders
  • This project only provides access to publicly available streaming sources
  • Users must comply with local laws and regulations

🀝 Contributing

Contributions are welcome! Please feel free to submit issues and pull requests.

How to Contribute

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“ž Support

If you encounter any issues or have questions:

  1. Check existing Issues
  2. Create a new issue with detailed description
  3. Include error logs and environment details

πŸ™ Acknowledgments

  • Thanks to all the anime API providers
  • Thanks to the open-source community
  • Thanks to everyone using and learning from this project

Made with ❀️ by Rishab (VoidBorn)

Please give proper credit if you use this project

⭐ If you find this helpful, please consider giving it a star!


Last Updated: November 16, 2025

About

Best anime X manga streaming website ever seen or made

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •