Skip to content

πŸŽ™οΈ WaveCast is a modern podcast platform built with Next.js and TypeScript, featuring episode browsing, blogs, favorites, pricing plans, and a fully responsive dark-themed UI.

Notifications You must be signed in to change notification settings

Itssanthoshhere/WaveCast-Podcast

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

73 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

WaveCast Project Banner

🎧 WaveCast – Modern Podcast Platform

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.

Live Demo

πŸ“‹ Table of Contents


✨ Introduction

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

βš™οΈ Tech Stack

πŸ–₯️ Frontend

  • 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

πŸ”§ Libraries & Tools

  • react-hot-toast – Toast notifications
  • swiper – Sliders & carousels
  • react-countup – Animated counters
  • localStorage – Client-side favorites storage

πŸ”‹ Core Features

πŸŽ™οΈ Podcast Episodes

  • Episode listing with search & sorting
  • Episode detail pages
  • Favorite episodes (localStorage)
  • Latest & favorite episode sections

πŸ“° Blogs

  • Blog listing with categories
  • Dynamic blog detail pages
  • Related blogs section

πŸ‘€ Hosts

  • Host profiles grid
  • Social media hover interactions

πŸ’³ Pricing

  • Monthly / Yearly toggle
  • Multiple subscription plans

❓ FAQs

  • Accordion-based FAQ pages
  • Smooth open/close animations

🧭 Layout System

  • Global Navbar & Footer
  • ClientWrapper for layout control
  • Clean handling of 404 pages

🧱 Project Structure

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

🧠 Architecture Overview

🧩 Rendering Model

  • Server Components by default

  • Client Components for interactivity:

    • Navbar
    • Favorites
    • Accordions
    • Search & sorting
    • ClientWrapper

πŸ“¦ State Management

  • React hooks (useState, useEffect)
  • localStorage for favorites
  • No global state library (yet)

🀸 Quick Start

Prerequisites

  • Node.js (18+ recommended)
  • npm or yarn

1️⃣ Clone Repository

https://github.com/Itssanthoshhere/WaveCast-Podcast.git
cd WaveCast-Podcast

2️⃣ Install Dependencies

npm install

3️⃣ Run Development Server

npm run dev

Open: http://localhost:3000


πŸ“± Routing Overview

/                          β†’ 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

🎨 Design System

🎨 Colors

--primary: #ffb340
--second: #7a6eff
--dark-color: #1c1d20
--gray-color: #3b3b3c
--gray-light: #262629

✍️ Typography

  • Kanit – Primary UI font
  • Metal Mania – Branding & display
  • Geist / Geist Mono – System & code fonts

πŸš€ Future Enhancements

  • 🎧 Real podcast audio player
  • πŸ” Authentication system
  • πŸ—„οΈ Backend + database integration
  • ❀️ User accounts & synced favorites
  • πŸ’¬ Comments & ratings
  • πŸ“° CMS integration (Sanity / Strapi)
  • πŸ“ˆ SEO & analytics

🀝 Contribution

Contributions are welcome!

git checkout -b feature/your-feature
git commit -m "feat: add new feature"
git push origin feature/your-feature

Then open a Pull Request πŸš€


πŸ“„ License

This project is for educational and portfolio purposes. All images and assets belong to their respective owners.


⭐ Show Your Support

If you like this project, give it a ⭐ on GitHub It helps a lot and keeps the motivation high ❀️


WaveCast – Podcasting made modern. 🎧✨


About

πŸŽ™οΈ WaveCast is a modern podcast platform built with Next.js and TypeScript, featuring episode browsing, blogs, favorites, pricing plans, and a fully responsive dark-themed UI.

Topics

Resources

Stars

Watchers

Forks

Contributors 2

  •  
  •