# RePiped RePiped is an alternative frontend for YouTube, inspired by the Piped project. It provides a privacy-focused way to watch YouTube content with additional features. This was made because piped is not working reliably anymore. Repiped uses yt-dlp to fetch the videos and ffmpeg to stream them. ## Features - 🎥 Watch YouTube videos without tracking - 📦 Video caching for faster playback and reduced bandwidth usage - 🍪 Cookie utilization for authenticated features - 🔒 Privacy-focused - 🚀 Fast and beautiful interface ## Installation Repiped supports Windows and Linux operating systems. ffmpeg and yt-dlp are provided in the deps folder. To install follow these simple steps: ### Running on the normal system 1. Clone this repo and fetch all lfs objects ```bash git clone https://git.eplg.services/obvtiger/repiped.git cd repiped git lfs fetch --all ``` Make sure that the `ffmpeg` and `yt-dlp` binaries are in the `deps` folder. Otherwise try to download the binaries from this repo and manually placing them into the deps directory. 2. Install all node dependencies ```bash npm i ``` or ```bash bun i ``` 3. Configure your environment variables in a `.env` file 4. Export the cookies of a YouTube account using the cookies.txt extension on chrome or firefox and place it into a cookies.txt file next to the `server.js` 5. Run the server ```bash node server.js ``` 6. Open your browser and navigate to `http://localhost:3000` ### Running inside Docker 1. Clone this repo and fetch all lfs objects ```bash git clone https://git.eplg.services/obvtiger/repiped.git cd repiped git lfs fetch --all ``` Make sure that the `ffmpeg` and `yt-dlp` binaries are in the `deps` folder. Otherwise try to download the binaries from this repo and manually placing them into the deps directory. 2. Configure your environment variables in a `.env` file 3. Export the cookies of a YouTube account using the cookies.txt extension on chrome or firefox and place it into a cookies.txt file next to the `server.js` 4. Build the docker image ```bash docker build -t repiped . ``` 6. Run the docker container ```bash docker run -d -p 3000:3000 repiped ``` ## Technical Details - Uses YouTube cookies for authenticated features while protecting user privacy - Implements video caching system to improve performance - Built with privacy and efficiency in mind ## Development This project is under active development. Contributions are welcome! ## Disclaimer Run this at your own risk! Generally running this is legally safe. It is just a frontend for YouTube with a builtin proxy with caching capabilities. If you are not sure, turn off caching in the `.env`. ## Disclaimer This project is not affiliated with YouTube or Google. It is an independent alternative frontend. ## Environment Configuration The application can be configured using environment variables in a `.env` file: | Variable | Description | Default | |----------|-------------|---------| | PORT | The port the server will listen on | 3000 | | ENABLE_CACHING | Enable/disable video caching | true | ### Video Caching When `ENABLE_CACHING` is set to `false`, video directories that haven't been accessed for 10 minutes will be automatically deleted to save disk space. When set to `true`, all downloaded videos will be kept permanently.