WaveCast is a fully responsive podcast platform built with Next.js App Router, designed to explore podcasts, episodes, blogs, hosts, and subscriptions in a modern UI.
It focuses on clean architecture, smooth UX, and scalable frontend design.
Built as a production-ready frontend, ready for backend & audio player integration.
- π Table of Contents
- β¨ Introduction
- βοΈ Tech Stack
- π Core Features
- π§± Project Structure
- π§ Architecture Overview
- π€Έ Quick Start
- π± Routing Overview
- π¨ Design System
- π Future Enhancements
- π€ Contribution
- π License
- β Show Your Support
WaveCast is a modern podcast discovery and content platform built using Next.js App Router.
It provides a rich frontend experience for:
- Browsing podcast episodes
- Reading podcast blogs
- Exploring hosts
- Managing favorites
- Viewing pricing plans & FAQs
The project is designed with scalability in mind, making it easy to integrate:
- Backend APIs
- Authentication
- Audio playback
- CMS systems
- Next.js (App Router) β Routing & rendering
- React 19 β Component-based UI
- TypeScript β Type safety & scalability
- Tailwind CSS 4 β Utility-first styling
- Custom CSS β Animations & effects
- Bootstrap Icons & Remix Icons β Iconography
- next/font β Optimized Google fonts
- react-hot-toast β Toast notifications
- swiper β Sliders & carousels
- react-countup β Animated counters
- localStorage β Client-side favorites storage
- Episode listing with search & sorting
- Episode detail pages
- Favorite episodes (localStorage)
- Latest & favorite episode sections
- Blog listing with categories
- Dynamic blog detail pages
- Related blogs section
- Host profiles grid
- Social media hover interactions
- Monthly / Yearly toggle
- Multiple subscription plans
- Accordion-based FAQ pages
- Smooth open/close animations
- Global Navbar & Footer
ClientWrapperfor layout control- Clean handling of 404 pages
app/
βββ Components/
β βββ ClientWrapper.tsx
β βββ Nav/
β βββ Footer/
β
βββ pages/
β βββ Index/
β βββ Episodes/
β βββ Blogs/
β βββ Pricing/
β βββ Faqs/
β βββ Contact/
β βββ HostProfile/
β
βββ JsonData/
β βββ EpisodesData.json
β βββ BlogsData.json
β
βββ layout.tsx
βββ not-found.tsx
βββ globals.css-
Server Components by default
-
Client Components for interactivity:
- Navbar
- Favorites
- Accordions
- Search & sorting
- ClientWrapper
- React hooks (
useState,useEffect) localStoragefor favorites- No global state library (yet)
- Node.js (18+ recommended)
- npm or yarn
https://github.com/Itssanthoshhere/WaveCast-Podcast.git
cd WaveCast-Podcastnpm installnpm run devOpen: http://localhost:3000
/ β Home
/pages/Episodes β All episodes
/pages/Episodes/[id] β Episode details
/pages/Episodes/LatestEpisode
/pages/Episodes/FavoriteEpisode
/pages/Blogs β Blog listing
/pages/Blogs/[id] β Blog details
/pages/About
/pages/Contact
/pages/Pricing
/pages/Faqs
/pages/HostProfile
/404 β Custom not found page--primary: #ffb340
--second: #7a6eff
--dark-color: #1c1d20
--gray-color: #3b3b3c
--gray-light: #262629- Kanit β Primary UI font
- Metal Mania β Branding & display
- Geist / Geist Mono β System & code fonts
- π§ Real podcast audio player
- π Authentication system
- ποΈ Backend + database integration
- β€οΈ User accounts & synced favorites
- π¬ Comments & ratings
- π° CMS integration (Sanity / Strapi)
- π SEO & analytics
Contributions are welcome!
git checkout -b feature/your-feature
git commit -m "feat: add new feature"
git push origin feature/your-featureThen open a Pull Request π
This project is for educational and portfolio purposes. All images and assets belong to their respective owners.
If you like this project, give it a β on GitHub It helps a lot and keeps the motivation high β€οΈ
WaveCast β Podcasting made modern. π§β¨