AniWatch is a modern anime streaming platform built using the MERN stack.
It streams .m3u8 video packets securely from Cloudflare R2 buckets, supports dual audio, subtitles, and features a fully dynamic admin-managed content system.
π¬ Watch anime, chat with the community, and manage your own anime database β all in one place.
π Live Website: https://aniwatch.jashan.tech
πΈ Screenshots:
- π₯ Anime Streaming β Streams
.m3u8video packets from Cloudflare R2 . - π Dual Audio Support β Seamlessly switch between Japanese and English audio tracks.
- π¬ Community Chats β Real-time discussions powered by WebSockets.
- π§βπ» User Posts β Users can share posts, discussions, and anime reviews.
- π§© Dynamic Content β
- Add new anime and episodes anytime
- Modify banners and categories dynamically
- Fully controlled from an Admin Dashboard
- π Secure Authentication β JWT-based login system for users and admins.
- π¨ Responsive UI β Built with React + Tailwind CSS for a modern, minimal, and smooth experience.
Frontend:
- React.js
- Tailwind CSS
Backend:
- Node.js
- Express.js
- MongoDB
- JWT Authentication
- WebSockets
Storage:
- Cloudflare R2 (for video storage & streaming)
To run AniWatch locally:
# Clone the repository
git clone https://github.com/Jashan32/AniWatch.git
cd AniWatch
# Install dependencies for both client and server
cd client && npm install
cd ../server && npm install
# Setup environment variables
# Create a .env file in both server & client using .env.example present
# Start the backend
node index.js
# In another terminal, start the frontend
npm run dev