Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ahmedalsanadi/movie-streaming-app

A feature-rich movie streaming app built with Next.js, React, and Tailwind CSS. Includes advanced search, personalized watchlists, multi-language support, and Firebase authentication
https://github.com/ahmedalsanadi/movie-streaming-app

authentication dark-mode firebase i18n movie-streaming-app multi-language nextjs react server-side-rendering tailwind-css tmdb-api

Last synced: 13 days ago
JSON representation

A feature-rich movie streaming app built with Next.js, React, and Tailwind CSS. Includes advanced search, personalized watchlists, multi-language support, and Firebase authentication

Awesome Lists containing this project

README

        

# ๐ŸŽฌ Movie Streaming App


Movie Page

---


Made with โค๏ธ by [Ahmed Al-Sanadi]

โญ Star this repo if you find it helpful!


![Next.js](https://img.shields.io/badge/Next.js-14.2.11-black?logo=next.js)
![React](https://img.shields.io/badge/React-18-blue?logo=react)
![Tailwind](https://img.shields.io/badge/Tailwind-3.4.1-38B2AC?logo=tailwind-css)
![Firebase](https://img.shields.io/badge/Firebase-10.14.1-FFCA28?logo=firebase)
![License](https://img.shields.io/badge/License-MIT-green.svg)

## โœจ Overview

Experience cinema like never before with our feature-rich movie streaming platform! Built with cutting-edge technologies, this app brings the magic of movies and TV shows right to your screen, complete with a seamless user experience and stunning visual design.

**Why you'll love this app**:
- ๐Ÿฟ **Discover, explore, and save** your favorite movies and TV shows.
- ๐ŸŽจ **Dark/Light Mode** for a tailored viewing experience.
- ๐ŸŒ **Multi-language Support** for diverse audiences.

## ๐Ÿš€ Key Features

### ๐ŸŽฏ Core Functionality
- **๐Ÿ” Advanced Search & Discovery**: Search movies, shows, or actors with ease.
- **๐Ÿ’ก Light/Dark Mode**: Switch between sleek dark and clean light modes.
- **๐ŸŒ Multi-language Support**: Available in **English**, **Arabic**, and **French**.
- **๐Ÿง‘โ€๐Ÿ’ป Personalized User Profiles**: Keep track of your favorite movies and shows in your watchlist.
- **๐Ÿ“ฑ Fully Responsive**: Looks great on any screen size, from mobile to desktop.

### ๐Ÿ› ๏ธ Technical Features
- **โšก Next.js**: Enjoy lightning-fast server-side rendering for a smooth user experience.
- **๐Ÿ”ฅ Firebase**: Authentication, data storage, and more, seamlessly integrated.
- **๐ŸŽจ Tailwind CSS**: A utility-first CSS framework for rapid UI development.
- **๐ŸŒ i18next**: Effortless multi-language support for a global user base.

## ๐ŸŽจ Screenshots Showcase

Click to expand and explore the visual beauty

### ๐ŸŽฌ Movie Details & More


Single Movie
Movie Overview


Movie List
Movie Trailer

### ๐Ÿ  Home Experience


Home Page
Light Mode

### ๐Ÿ‘ค User Profile & Auth


User Profile
Sign Up

## ๐Ÿš€ Quick Start

### Prerequisites

Before you begin, ensure you have the following installed:
```bash
Node.js v14+
npm or yarn
```

### ๐Ÿ› ๏ธ Installation & Setup

1. **Clone the repository**
```bash
git clone https://github.com/ahmedalsanadi/Movie-Streaming-App.git
cd Movie-Streaming-App
```

2. **Install dependencies**
```bash
npm install
```

3. **Environment Configuration**

To fetch movie data and use Firebase services, create a `.env.local` file in the root of your project with the following environment variables:

```bash
NEXT_PUBLIC_API_KEY=your_tmdb_api_key
NEXT_PUBLIC_FIREBASE_API_KEY=your_firebase_api_key
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN=your_firebase_auth_domain
NEXT_PUBLIC_FIREBASE_PROJECT_ID=your_firebase_project_id
NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET=your_firebase_storage_bucket
NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=your_firebase_messaging_sender_id
NEXT_PUBLIC_FIREBASE_APP_ID=your_firebase_app_id
```

4. **Launch the app**
```bash
npm run dev
```

Open your browser and navigate to `http://localhost:3000` to view the app!

## ๐ŸŽฎ Features Guide

### User Features
- **๐Ÿ” Authentication**: Secure login, registration, and profile management with Firebase.
- **๐Ÿ” Discovery**: Browse thousands of movies, TV shows, and actors.
- **๐Ÿ’พ Watchlists**: Add movies to your personalized list.
- **๐ŸŒ Language Support**: Toggle between **English**, **Arabic**, and **French**.
- **๐ŸŒ“ Light/Dark Mode**: A toggle for personalized viewing.

### Developer Features
- **๐Ÿ”ง ESLint & Prettier**: Ensure code quality with automated linting and formatting.
- **๐Ÿ›  Husky Hooks**: Pre-commit hooks ensure high code standards with **lint-staged**.

## ๐Ÿค Contributing

We appreciate contributions! Hereโ€™s how you can contribute:

1. **Fork the repository**
2. **Create your feature branch** (`git checkout -b feature/AmazingFeature`)
3. **Commit your changes** (`git commit -m 'Add some AmazingFeature'`)
4. **Push to the branch** (`git push origin feature/AmazingFeature`)
5. **Open a pull request**

## ๐Ÿ“œ License

This project is licensed under the MIT License - see the [LICENSE](./LICENSE) file for details.

---


Made with โค๏ธ by [Ahmed Al-Sanadi]

โญ Star this repo if you find it helpful!

---