/holoplay-pwa

Web app using Invidious API for listening Youtube audio source.

Primary LanguageTypeScript

HoloPlay

License: MIT Stars Forks Docker pull GitHub contributors GitHub issues GitHub pull request

🔍 Table of Contents

📌 Overview

HoloPlay is a Youtube alternative app using Invidious API. You can save music to favoris or create your playlists. This project is fully open source.

If you want add more feature, PM, MR or PR are welcome :)


✨ Features

  • Search on Invidious or Youtube Music
  • Search videos, playlists and channels
  • Create your playlists
  • Save videos, playlists and channels in favorites
  • Download source
  • Data Syncing between devices (by using Holoplay Serverless)
  • Internationalization : 🏴󠁧󠁢󠁥󠁮󠁧󠁿 English, 🇫🇷 French, 🇯🇵 Japanese, 🇷🇺 Russian and 🇩🇪 German
  • Respect your privacy
  • Sponsor Block
  • Responsive
  • Dark Theme
  • Background mode with PWA installation

🚀 Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Setup

First, use Node.js 18 or higher.

Copy .env.dist to .env and change REACT_APP_API_URL:

REACT_APP_API_URL=http://localhost:3001 # Or https://holoplay-serverless.vercel.app

Then, install dependencies:

npm i

And start project in development mode:

npm start

Docker

If you prefer Docker, HoloPlay can be run in a container from official Docker hub:

docker run -d -p 3000:3000 spout8301/holoplay:latest

Or locally:

docker build -t holoplay .
docker run -d -p 3000:3000 holoplay

💻 Stack

And others libraries, see package.json. Thank you to all contributors of these libraries 🔥 !

📊 Plausible Analytics

HoloPlay use Plausible Analytics, an transparent and fully open source privacy-friendly analytics software.

Analytics page is public : HoloPlay Plausible page

🔥 About Invidious

Invidious is an alternative front-end to YouTube. HoloPlay use all Invidious public instances. All instances are retrieved each time HoloPlay is launched.

🙌 Contributors

📄 License

This project is licensed under the MIT.

This README was partly generated with easyreadme.