├── .env.example ├── .eslintrc.json ├── app ├── favicon.ico ├── not-found.js ├── loading.js ├── (home) │ ├── layout.js │ ├── page.js │ ├── download │ │ └── [id] │ │ │ └── page.js │ ├── watch │ │ └── [id] │ │ │ ├── watch.module.css │ │ │ └── page.js │ ├── info │ │ └── [id] │ │ │ ├── info.module.css │ │ │ └── page.js │ └── search │ │ ├── search.module.css │ │ └── page.js ├── globals.css ├── (auth) │ └── login │ │ ├── page.js │ │ └── login.module.css └── layout.js ├── components ├── ui │ ├── banner │ │ ├── videoPlay │ │ │ ├── videoPlay.module.css │ │ │ └── VideoPlay.jsx │ │ ├── AnimeInfo │ │ │ ├── AnimeInfo.jsx │ │ │ └── AnimeInfo.module.css │ │ ├── Banner.jsx │ │ └── banner.module.css │ ├── card │ │ ├── loading.module.css │ │ ├── Card.jsx │ │ └── card.module.css │ ├── recentReleaseCard │ │ ├── loading.module.css │ │ └── RecentReleasesCard.jsx │ ├── AtoZalphabet │ │ ├── AtoZalphabet.jsx │ │ └── AtoZalphabet.module.css │ └── episodeSelector │ │ ├── episodeSelector.module.css │ │ └── EpisodeSelector.jsx └── layout │ ├── navbar │ ├── responsive │ │ └── Tablet │ │ │ ├── Tablet.jsx │ │ │ └── Tablet.module.css │ ├── Items │ │ ├── Items.module.css │ │ └── Items.jsx │ ├── Navbar.jsx │ ├── search │ │ ├── Search.jsx │ │ └── search.module.css │ └── navbar.module.css │ ├── footer │ ├── items │ │ ├── items.module.css │ │ └── Items.jsx │ ├── Footer.jsx │ └── footer.module.css │ ├── loading │ ├── loading.module.css │ └── Loading.jsx │ └── error │ ├── __Error.jsx │ └── error.module.css ├── jsconfig.json ├── public └── images │ ├── cover │ └── jjk.jpg │ ├── logo │ └── logo-2.png │ ├── wallpapers │ ├── naruto.webp │ ├── one piece.jpg │ └── demon slayer.jpg │ └── banner │ ├── LoginWallpaper.jpg │ ├── Fearless and dark.jpeg │ ├── Like a Pro Player.jpeg │ ├── Stronger than ever.jpeg │ └── Wallpaper-Solo-Leveling-Manga-Anime-Digital61.jpg ├── lib ├── CleanURL.js ├── FetchData.js └── DB │ └── AddWatched.js ├── content ├── HomePage │ ├── Home │ │ ├── slidingBanner │ │ │ ├── slidingBanner.module.css │ │ │ └── SlidingBanner.jsx │ │ ├── discover │ │ │ ├── options │ │ │ │ ├── Options.jsx │ │ │ │ └── options.module.css │ │ │ ├── discover.module.css │ │ │ └── Discover.jsx │ │ └── recentRelease │ │ │ ├── RecentRelease.jsx │ │ │ └── recentRelease.module.css │ ├── Watch │ │ ├── left │ │ │ ├── animeSeasons │ │ │ │ ├── card │ │ │ │ │ ├── SeasonSelectorCard.jsx │ │ │ │ │ └── card.module.css │ │ │ │ ├── animeSeasons.module.css │ │ │ │ └── AnimeSeasons.jsx │ │ │ ├── videoOption │ │ │ │ ├── videoOption.module.css │ │ │ │ └── VideoOption.jsx │ │ │ ├── animeInfo │ │ │ │ ├── AnimeInfo.jsx │ │ │ │ └── animeInfo.module.css │ │ │ ├── videoSelector │ │ │ │ ├── videoSelector.module.css │ │ │ │ └── VideoSelector.jsx │ │ │ └── videoPlayer │ │ │ │ ├── videoPlayer.module.css │ │ │ │ └── VideoPlayer.jsx │ │ └── right │ │ │ ├── recommendation │ │ │ └── Recommendation.jsx │ │ │ └── mostPopular │ │ │ ├── MostPopular.jsx │ │ │ └── mostPopular.module.css │ ├── Search │ │ └── userSelection │ │ │ ├── catalog │ │ │ ├── Type │ │ │ │ ├── status.module.css │ │ │ │ └── Type.jsx │ │ │ ├── season │ │ │ │ ├── season.module.css │ │ │ │ └── Season.jsx │ │ │ ├── status │ │ │ │ ├── status.module.css │ │ │ │ └── Status.jsx │ │ │ ├── genres │ │ │ │ ├── genres.module.css │ │ │ │ └── Genres.jsx │ │ │ ├── catalog.module.css │ │ │ ├── year │ │ │ │ ├── year.module.css │ │ │ │ └── Year.jsx │ │ │ └── Catalog.jsx │ │ │ ├── UserSelection.jsx │ │ │ ├── options │ │ │ ├── options.module.css │ │ │ └── Option.jsx │ │ │ └── userSelection.module.css │ └── Info │ │ └── animeInfo │ │ ├── Info │ │ ├── Info.module.css │ │ └── Info.jsx │ │ ├── AnimeInfo.jsx │ │ └── animeInfo.module.css └── AuthPage │ └── login │ └── left │ ├── formField │ ├── FormField.jsx │ └── formField.module.css │ ├── LeftContainer.jsx │ └── left.module.css ├── .gitignore ├── next.config.mjs ├── package.json └── README.md /.env.example: -------------------------------------------------------------------------------- 1 | API_URL=Your api key goes here -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "next/core-web-vitals" 3 | } 4 | -------------------------------------------------------------------------------- /app/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Amritanshu312/animeverse/HEAD/app/favicon.ico -------------------------------------------------------------------------------- /components/ui/banner/videoPlay/videoPlay.module.css: -------------------------------------------------------------------------------- 1 | .videoBanner { 2 | object-fit: cover; 3 | } 4 | -------------------------------------------------------------------------------- /jsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "paths": { 4 | "@/*": ["./*"] 5 | } 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /public/images/cover/jjk.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Amritanshu312/animeverse/HEAD/public/images/cover/jjk.jpg -------------------------------------------------------------------------------- /public/images/logo/logo-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Amritanshu312/animeverse/HEAD/public/images/logo/logo-2.png -------------------------------------------------------------------------------- /public/images/wallpapers/naruto.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Amritanshu312/animeverse/HEAD/public/images/wallpapers/naruto.webp -------------------------------------------------------------------------------- /public/images/banner/LoginWallpaper.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Amritanshu312/animeverse/HEAD/public/images/banner/LoginWallpaper.jpg -------------------------------------------------------------------------------- /public/images/wallpapers/one piece.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Amritanshu312/animeverse/HEAD/public/images/wallpapers/one piece.jpg -------------------------------------------------------------------------------- /public/images/wallpapers/demon slayer.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Amritanshu312/animeverse/HEAD/public/images/wallpapers/demon slayer.jpg -------------------------------------------------------------------------------- /public/images/banner/Fearless and dark.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Amritanshu312/animeverse/HEAD/public/images/banner/Fearless and dark.jpeg -------------------------------------------------------------------------------- /public/images/banner/Like a Pro Player.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Amritanshu312/animeverse/HEAD/public/images/banner/Like a Pro Player.jpeg -------------------------------------------------------------------------------- /public/images/banner/Stronger than ever.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Amritanshu312/animeverse/HEAD/public/images/banner/Stronger than ever.jpeg -------------------------------------------------------------------------------- /app/not-found.js: -------------------------------------------------------------------------------- 1 | import Error from "@/components/layout/error/__Error" 2 | 3 | const Page = () => { 4 | return 5 | } 6 | 7 | export default Page -------------------------------------------------------------------------------- /app/loading.js: -------------------------------------------------------------------------------- 1 | import Loading from "@/components/layout/loading/Loading" 2 | 3 | const Page = () => { 4 | return 5 | } 6 | 7 | export default Page -------------------------------------------------------------------------------- /public/images/banner/Wallpaper-Solo-Leveling-Manga-Anime-Digital61.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Amritanshu312/animeverse/HEAD/public/images/banner/Wallpaper-Solo-Leveling-Manga-Anime-Digital61.jpg -------------------------------------------------------------------------------- /lib/CleanURL.js: -------------------------------------------------------------------------------- 1 | export const cleanParam = (param) => { 2 | if (!param || typeof param !== 'string') { 3 | return ''; 4 | } 5 | // Replace %20 with + 6 | return param.replace(/%20/g, '+'); 7 | }; 8 | 9 | -------------------------------------------------------------------------------- /app/(home)/layout.js: -------------------------------------------------------------------------------- 1 | import Navbar from "@/components/layout/navbar/Navbar"; 2 | import Footer from "@/components/layout/footer/Footer"; 3 | 4 | export default function RootLayout({ children }) { 5 | return ( 6 | <> 7 | 8 | {children} 9 |