Home
Softono

Iptv Template

Open source MIT Vue
27
Stars
4
Forks
0
Issues
1
Watchers
1 year
Last Commit

 About Iptv Template

A modern streaming platform built with Nuxt 3 and Nuxt Content.

Platforms

Web Self-hosted

Languages

Vue

Need Help Installing Iptv Template?

We provide expert installation service for this software. Our team will install, configure, and secure Iptv Template on your server. plans start at just $30.

Iptv Template

View on GitHub

IPTV Stream Platform

A modern streaming platform built with Nuxt 3 and Nuxt Content, featuring a beautiful UI, video playback capabilities, and a content management system. This platform provides an immersive viewing experience with features like video categorization, search functionality, and a responsive design.

MIT License Nuxt 3 Vue.js Tailwind CSS

πŸ’ Support My Work

NuxtMint

This template and many others are available at NuxtMint.com

Discord

Join our friendly Discord community to get help, share your ideas, and connect with other developers!

✨ Showcase

IPTV Template Preview

▢️ Watch Full Video Preview

A beautiful and modern streaming platform template with:

  • 🎬 Stunning video player interface with Plyr
  • 🎨 Clean and responsive design using Tailwind CSS
  • πŸ“± Mobile-first approach with smooth animations
  • ⚑️ Lightning-fast performance with Nuxt 3
  • πŸ”₯ Built with the latest web technologies

View Demo Β· Report Bug Β· Request Feature

✨ Features

  • πŸŽ₯ Video streaming with Plyr player integration
  • πŸ“ Content management with Nuxt Content
  • 🎨 Modern and responsive UI with Tailwind CSS
  • πŸ“± Mobile-first design approach
  • πŸ” Content search and filtering
  • πŸ“‚ JSON-based content management
  • 🌈 Beautiful animations and transitions
  • 🎬 Video thumbnails and metadata support
  • 🏷️ Category and tag-based organization

πŸš€ Quick Start

Prerequisites

  • Node.js 16.x or later
  • npm, yarn, or pnpm package manager
  • OMDB API key (free) for movie posters and metadata in the Hero section

Installation

  1. Clone the repository:
git clone https://github.com/florianjs/iptv-template
cd fiverr-iptv
  1. Install dependencies:
# Using npm
npm install

# Using yarn
yarn install

# Using pnpm
pnpm install
  1. Set up environment variables:
cp .env.example .env
  1. Start the development server:
# Using pnpm (recomended)
pnpm dev

# Using npm
npm run dev

# Using yarn
yarn dev

The application will be available at http://localhost:3000

πŸ“ Project Structure

fiverr-iptv/
β”œβ”€β”€ components/        # Vue components
β”œβ”€β”€ content/
β”‚   └── medias/       # JSON content files for media items
β”œβ”€β”€ pages/            # Application pages and routes
β”œβ”€β”€ public/           # Static files
β”œβ”€β”€ stores/           # Pinia stores
β”œβ”€β”€ app.vue           # Main application file
└── nuxt.config.ts    # Nuxt configuration

πŸ’» Development

Content Management with Nuxt Content

This project uses Nuxt Content for managing media content. All media items are stored as JSON files in the content/medias/ directory, making it easy to:

  • Query content using the built-in API
  • Leverage powerful search capabilities
  • Use Git-based content management
  • Benefit from automatic TypeScript types

Adding New Content

Add new media items by creating JSON files in the content/medias/ directory. Each file should follow this structure:

{
  "title": "Movie Title",
  "mediaUrl": "https://example.com/video.mp4",
  "mediaThumbnail": "https://example.com/thumbnail.jpg",
  "mediaType": "video/mp4",
  "tags": ["Category1", "Category2"],
  "description": "Movie description",
  "quality": "4K",
  "duration": "2:30:00",
  "ageRating": "PG-13",
  "genres": ["Action", "Drama"],
  "actors": ["Actor 1", "Actor 2"]
}

Building for Production

Build the application for production:

# Using npm
npm run build

# Using yarn
yarn build

# Using pnpm
pnpm build

Preview the production build:

# Using npm
npm run preview

# Using yarn
yarn preview

# Using pnpm
pnpm preview

πŸš€ Deployment

Recommended: Cloudflare Pages

This project is optimized for deployment on Cloudflare Pages, which provides:

  • Global CDN distribution
  • Automatic HTTPS
  • Zero cold starts
  • Easy deployment process

Follow the Nuxt Content deployment guide for Cloudflare for detailed instructions.

Basic deployment steps:

  1. Connect your repository to Cloudflare Pages
  2. Set build command: pnpm run build
  3. Set build output directory: .output/public
  4. Add environment variables:
    • OMDB_API_KEY=your_api_key
  5. Add a D1 SQL Database from Cloudflare
  6. Bind your database to your Cloudflare Page

πŸ”§ Configuration

Environment Variables

The following environment variables are required:

# OMDB API key for movie posters and metadata (required)
OMDB_API_KEY=your_api_key_here

To get started:

  1. Sign up for a free OMDB API key at https://www.omdbapi.com/apikey.aspx
  2. Copy .env.example to .env
  3. Replace your_api_key_here with your actual OMDB API key

Nuxt Configuration

The application can be configured through the nuxt.config.ts file. Key configurations include:

  • Content module settings
  • Tailwind CSS configuration
  • Plyr player options
  • Route handling

πŸ“± Mobile Support

The application is fully responsive and optimized for mobile devices. Features include:

  • Adaptive layouts
  • Touch-friendly controls
  • Optimized animations
  • Mobile-specific UI enhancements

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments