2025-12-28 01:11:14 -08:00
2025-12-27 23:22:37 -08:00
2025-12-27 14:16:40 -08:00
2025-12-27 15:42:56 -08:00
2025-12-27 14:16:40 -08:00
2025-12-27 14:16:40 -08:00
2025-12-27 14:16:40 -08:00
2025-12-27 15:46:59 -08:00

NodeCast TV

A modern, web-based IPTV player featuring Live TV, EPG, Movies (VOD), and Series support. Built with performance and user experience in mind.

Features

  • 📺 Live TV: Fast channel zapping, category grouping, and search.
  • 📅 TV Guide (EPG): Interactive grid guide with 24h timeline, search, and dynamic resizing.
  • 🎬 VOD Support: Dedicated sections for Movies and TV Series with rich metadata, posters, and seasonal episode lists.
  • ❤️ Favorites System: Unified favorites for channels, movies, and series with instant synchronization.
  • ⚡ High Performance: Optimized for large playlists (7000+ channels) using virtual scrolling and batch rendering.
  • ⚙️ Management:
    • Support for Xtream Codes and M3U playlists.
    • Manage hidden content categories.
    • Playback preferences (volume memory, auto-play).
  • 🐳 Docker Ready: Easy deployment containerization.

Screenshots

Screenshot 1 Screenshot 2 Screenshot 3 Screenshot 4

Getting Started

Prerequisites

  • Node.js (v14 or higher)
  • npm

Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/nodecast-tv.git
    cd nodecast-tv
    
  2. Install dependencies:

    npm install
    
  3. Start the development server:

    npm run dev
    
  4. Open your browser at http://localhost:3000.

Docker Deployment

You can run NodeCast TV easily using Docker.

  1. Create a docker-compose.yml file (or copy the one from this repo):

    services:
      nodecast-tv:
        build: https://github.com/technomancer702/nodecast-tv.git#main
        container_name: nodecast-tv
        ports:
          - "3000:3000" # Host:Container
        volumes:
          - ./data:/app/data
        restart: unless-stopped
        environment:
          - NODE_ENV=production
          - PORT=3000 # Optional: Internal container port
    
  2. Run the container:

    docker-compose up -d
    

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

Technology Stack

  • Backend: Node.js, Express
  • Frontend: Vanilla JavaScript (ES6+), CSS3
  • Database: JSON-based local storage (LowDB style)
  • Streaming: HLS.js for stream playback

Project Structure

nodecast-tv/
├── public/              # Frontend assets
│   ├── css/             # Stylesheets
│   ├── js/              # Client-side logic
│   │   ├── components/  # UI Components (ChannelList, EpgGuide, etc.)
│   │   ├── pages/       # Page Controllers (Movies, Series, etc.)
│   │   └── api.js       # API Client
│   └── index.html       # Main entry point
├── server/              # Backend server
│   ├── routes/          # API Endpoints
│   ├── services/        # Playlist parsers & logic
│   └── db.js            # Data persistence layer
└── data/                # Persistent storage (playlists, settings)

Usage

  1. Go to Settings -> Content Sources.
  2. Add your IPTV provider details (Xtream Codes or M3U URL).
  3. Click "Refresh Sources".
  4. Navigate to Live TV, Movies, or Series to browse your content.

License

This project is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) license.

You are free to:

  • Share — copy and redistribute the material in any medium or format
  • Adapt — remix, transform, and build upon the material

Under the following terms:

  • Attribution — You must give appropriate credit.
  • NonCommercial — You may not use the material for commercial purposes.
  • ShareAlike — If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original.

See the LICENSE file for details.

S
Description
KiraTV APP NodeCast Modificada y Personalizada
Readme GPL-3.0 12 MiB
Languages
JavaScript 82.2%
CSS 10%
HTML 7.6%
Dockerfile 0.2%