Skip to content

๐Ÿ”ฎ Aniverse: A feature-rich anime platform built on the MERN stack, allowing users to seamlessly stream content, track their watch history, discover new series and more.

License

Notifications You must be signed in to change notification settings

phero20/Aniverse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Anime Platform Logo

Anime Streaming Platform

A modern, full-stack anime streaming web application built with React and Node.js

Live Demo React Node.js MongoDB

Featuring advanced video streaming, AI-powered chat, user authentication, and comprehensive anime database integration


๐ŸŽฎ Demo

ย ย ย ย 
Live Demo : https://anime-frontend-nu.vercel.app
ย ย ย ย 

โœจ Features & Highlights

๐ŸŽฅ Video Streaming

  • HLS Video Player: Advanced video streaming with HLS.js and Plyr
  • Multiple Servers: Support for multiple streaming servers (Sub/Dub)
  • Quality Selection: Dynamic quality switching (1080p, 720p, 480p, 360p, Auto)
  • CORS Proxy: Built-in proxy system to bypass CORS restrictions
  • Episode Caching: MongoDB-based caching for improved performance
  • Subtitle Support: Integrated subtitle/caption functionality

๐Ÿค– AI-Powered Features

  • AI Chat Assistant: Groq-powered AI chat for anime recommendations and queries
  • Chat History: Persistent conversation history with MongoDB storage
  • Smart Recommendations: AI-driven anime suggestions based on user preferences

๐Ÿ‘ค User Management

  • Authentication System: JWT-based secure login/registration
  • User Profiles: Personalized user profiles with avatar support
  • Watch History: Track and resume watching episodes
  • Favorites & Watchlist: Save favorite anime and create watchlists
  • Progress Tracking: Automatic episode progress tracking

๐ŸŽจ Modern UI/UX

  • Responsive Design: Mobile-first design with Tailwind CSS
  • Smooth Animations: Framer Motion animations throughout the app
  • Dark Theme: Crunchyroll-inspired dark theme design
  • Interactive Components: Hover effects, loading states, and transitions
  • Toast Notifications: Real-time user feedback system

๐Ÿ” Search & Discovery

  • Advanced Search: Real-time search with suggestions
  • Category Browsing: Browse by genres, categories, and producers
  • Trending & Popular: Discover trending and popular anime
  • Seasonal Anime: Browse current and upcoming seasonal releases
  • Filter System: Advanced filtering options for better discovery

๐Ÿ“ธ Screenshots

Homepage

Anime Platform Logo ย ย ย ย  Anime Platform Logo

Video Player

Anime Platform Logo ย ย ย ย  Anime Platform Logo

AI Chat Assistant

Anime Platform Logo ย ย ย ย  Anime Platform Logo

More

Anime Platform Logo ย ย ย ย  Anime Platform Logo

๐Ÿ› ๏ธ Technology Stack

Frontend

  • React 19 - Modern React with latest features
  • Vite - Fast build tool and development server
  • Redux Toolkit - State management with RTK Query
  • React Router v7 - Client-side routing
  • Tailwind CSS - Utility-first CSS framework
  • Framer Motion - Animation library
  • HLS.js - HTTP Live Streaming support
  • Plyr - Modern HTML5 video player
  • Axios - HTTP client for API requests

Backend

  • Node.js - JavaScript runtime
  • Express.js - Web application framework
  • MongoDB - NoSQL database with Mongoose ODM
  • JWT - JSON Web Token authentication
  • Groq SDK - AI chat integration
  • Bcrypt - Password hashing
  • CORS - Cross-origin resource sharing

External APIs

  • HiAnime API - Anime data and streaming links
  • Groq AI - AI chat functionality

๐Ÿ“ Project Architecture

Anime/
โ”œโ”€โ”€ Frontend/                 # React frontend application
โ”‚   โ”œโ”€โ”€ src/
โ”‚   โ”‚   โ”œโ”€โ”€ components/      # Reusable UI components
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ VideoPlayer.jsx    # Advanced video player
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ AiChat.jsx         # AI chat interface
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ Navbar.jsx         # Navigation component
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ AnimeCards.jsx     # Anime card components
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ EpisodeHistory.jsx # Watch history display
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ”‚   โ”œโ”€โ”€ pages/           # Page components
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ Home.jsx           # Homepage
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ Episodes.jsx       # Episode player page
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ Search.jsx         # Search functionality
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ Profile.jsx        # User profile
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ”‚   โ”œโ”€โ”€ redux/           # State management
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ apifetch/          # API slice definitions
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ slices/            # Redux slices
โ”‚   โ”‚   โ””โ”€โ”€ assets/          # Static assets
โ”‚   โ”œโ”€โ”€ public/              # Public assets
โ”‚   โ””โ”€โ”€ package.json         # Frontend dependencies
โ”œโ”€โ”€ Backend/                 # Node.js backend API
โ”‚   โ”œโ”€โ”€ controllers/         # Route controllers
โ”‚   โ”‚   โ”œโ”€โ”€ fetchDataController.js  # Anime data fetching
โ”‚   โ”‚   โ”œโ”€โ”€ authcontroller.js       # Authentication
โ”‚   โ”‚   โ”œโ”€โ”€ userAnimeController.js  # User anime data
โ”‚   โ”‚   โ””โ”€โ”€ aiChatController.js     # AI chat handling
โ”‚   โ”œโ”€โ”€ models/              # MongoDB schemas
โ”‚   โ”‚   โ”œโ”€โ”€ AnimeData.js           # Anime data model
โ”‚   โ”‚   โ”œโ”€โ”€ authModel.js           # User model
โ”‚   โ”‚   โ”œโ”€โ”€ StreamLink.js          # Stream links model
โ”‚   โ”‚   โ”œโ”€โ”€ EpisodeModel.js        # Episode model
โ”‚   โ”‚   โ””โ”€โ”€ ChatMessage.js         # Chat message model
โ”‚   โ”œโ”€โ”€ routes/              # API routes
โ”‚   โ”œโ”€โ”€ middlewares/         # Custom middleware
โ”‚   โ”œโ”€โ”€ configs/             # Configuration files
โ”‚   โ””โ”€โ”€ package.json         # Backend dependencies
โ””โ”€โ”€ README.md               # Project documentation

๐Ÿš€ Quick Start Guide

Prerequisites

  • Node.js (v16 or higher)
  • MongoDB (local or cloud instance)
  • npm or yarn

Installation

  1. Clone the repository

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

    npm install
  3. Setup Backend

    cd Backend
    npm install
  4. Setup Frontend

    cd ../Frontend
    npm install

Environment Configuration

Create a .env file in the Backend directory:

# Database
MONGODB_URI=mongodb://localhost:27017/anime-streaming

# JWT
JWT_SECRET=your-super-secret-jwt-key

# External APIs
BACKEND_URL=https://api.hianime.to
SELF_URL=http://localhost:6789

# AI Chat (Groq)
GROQ_API_KEY=your-groq-api-key

# Server
PORT=6789

Running the Application

  1. Start Backend Server

    cd Backend
    npm run dev

    Backend will run on http://localhost:6789

  2. Start Frontend Development Server

    cd Frontend
    npm run dev

    Frontend will run on http://localhost:5173

๐Ÿ“‹ API Documentation

Anime Data

  • GET /api/anime/getdata - Fetch homepage data
  • GET /api/anime/category/:name/:page - Browse by category
  • GET /api/anime/genre/:name/:page - Browse by genre
  • GET /api/anime/animedata/:id - Get anime details
  • GET /api/anime/episodes/:id - Get episode list
  • POST /api/anime/episodes-server - Get streaming servers
  • POST /api/anime/episodes-stream-links - Get stream links
  • GET /api/anime/proxy-stream - Proxy video streams

Authentication

  • POST /api/auth/register - User registration
  • POST /api/auth/login - User login
  • GET /api/auth/verify - Verify JWT token

User Features

  • POST /api/userAnime/add-to-history - Add to watch history
  • GET /api/userAnime/get-history - Get watch history
  • POST /api/userAnime/add-to-favorites - Add to favorites
  • GET /api/userAnime/get-favorites - Get favorites

AI Chat

  • POST /api/ai/chat - Send chat message
  • GET /api/ai/history/:userId - Get chat history

๐ŸŽฏ Feature Deep Dive

Advanced Video Player

  • Built with HLS.js for adaptive streaming
  • Plyr integration for modern controls
  • Custom quality selector and subtitle support
  • CORS proxy for seamless streaming
  • Episode progress tracking and auto-resume

AI Chat System

  • Groq-powered AI assistant
  • Context-aware anime recommendations
  • Persistent chat history
  • Real-time streaming responses

User Experience

  • Smooth page transitions with Framer Motion
  • Responsive design for all devices
  • Real-time search with debouncing
  • Infinite scroll for large datasets
  • Toast notifications for user feedback

Performance Optimizations

  • MongoDB caching for frequently accessed data
  • Lazy loading for images and components
  • Debounced search to reduce API calls
  • Optimized Redux state management
  • Code splitting and bundle optimization

๐Ÿ”ง Development Workflow

Frontend Development

cd Frontend
npm run dev      # Start development server
npm run build    # Build for production
npm run preview  # Preview production build
npm run lint     # Run ESLint

Backend Development

cd Backend
npm run dev      # Start with nodemon
npm start        # Start production server

๐Ÿš€ Production Deployment

Frontend (Vercel)

  1. Build the frontend: npm run build
  2. Deploy the dist folder to your hosting platform
  3. Configure environment variables

Backend (Vercel)

  1. Set up environment variables
  2. Deploy the Backend folder
  3. Ensure MongoDB connection is configured

๐Ÿค Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/new-feature
  3. Commit changes: git commit -am 'Add new feature'
  4. Push to branch: git push origin feature/new-feature
  5. Submit a Pull Request

๐ŸŽฎ Demo Features

  • ๐ŸŽฌ Stream Episodes - Watch your favorite anime with HLS streaming
  • ๐Ÿค– AI Chat - Ask for anime recommendations
  • ๐Ÿ” Search - Find anime by name, genre, or category
  • ๐Ÿ“ฑ Mobile Experience - Fully responsive on all devices
  • ๐ŸŽฏ User Profiles - Create account and track watch history

๐Ÿ™ Credits & Acknowledgments

Special Thanks To:

HiAnime Groq Crunchyroll


โญ If you found Like this project, please give it a star! โญ

About

๐Ÿ”ฎ Aniverse: A feature-rich anime platform built on the MERN stack, allowing users to seamlessly stream content, track their watch history, discover new series and more.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published