Find your next open-source project

Search by name, purpose, or keyword — or paste a GitHub repository URL

A privacy-friendly YouTube frontend with its own API and federation, for viewers and self-hosters.

10,317
901
Vue
AGPL-3.0
5 years old

What it does

Piped is an alternative frontend for YouTube. It fetches video metadata through NewPipeExtractor rather than the official YouTube APIs, then plays content through Piped's own API and public instances. The stated goals are no ads, no tracking, and no direct connections to Google's servers.

The frontend includes login, feeds, playlists, subscriptions, infinite scrolling, light/dark themes, audio-only playback, 4K support, PWA installation, and locally stored preferences. It integrates SponsorBlock, LBRY streaming, and Return YouTube Dislike through RYD-Proxy, and supports embedding. The project also exposes a public JSON API and documents federation between instances over Matrix.

It is aimed at viewers who want ad-free, privacy-oriented YouTube access without a Google account, and at self-hosters who want to run their own instance.

Quick start

For ordinary use, open a public Piped instance such as piped.video; no installation is required. A list of community instances is maintained in the public instances documentation. You can register an account there for feeds and playlists via the registration page.

To run the frontend locally, install dependencies and start the development server from the repository root:

pnpm install
pnpm dev

The development build hot-reloads as you edit files. The README does not give the backend/API setup command in this development section; self-hosting is covered separately in the self-hosting documentation, and the API specification lives in the OpenAPI repository.

Self-hosting and API

Running a full instance requires both the frontend and a Piped API backend; the frontend's API URL is configured through instance settings. The project documents self-hosting at docs.piped.video and publishes an OpenAPI specification. Because the frontend and backend are separate services, the local pnpm dev workflow above covers only the Vue app.

Operating constraints

Piped works by extracting data from YouTube without the official API, which means playback depends on the extractor continuing to work and on a reachable API instance. Public instances may be blocked or rate-limited; the README notes federated instances can sometimes bypass geo restrictions "if possible". No age restriction is claimed, but that behavior depends on the extraction layer.

The project is licensed under AGPL-3.0, so modified network deployments carry source-availability obligations. Piped-Redirects, Libredirect, or Predirect are recommended for redirecting YouTube links to Piped.

HotRepo's take

Piped has at least two substantial Hacker News threads: 265 points and 230 comments in July 2021, and 315 points with 127 comments in October 2023. The discussions show the project's practical ecosystem: commenters point to Invidious as an alternative, recommend Yattee as a client for both Piped and Invidious, and note LibreTube's Piped-based Android app with account sync and proxied playback (discussion). A related 2022 thread about Cloudflare blocking Piped is a concrete reminder that public-instance availability is an operational dependency, not a guarantee.

Written by AI from the project's README, updated . The project's own docs are the source of truth.

Hacker News

Piped – An alternative privacy-friendly YouTube front end
▲ 315 · 127 comments · October 17, 2023
Piped: A privacy-friendly YouTube front end which is efficient by design
▲ 265 · 230 comments · July 17, 2021
Piped – Privacy-friendly YouTube Frontend
▲ 3 · 0 comments · May 10, 2023