PeerTube

A federated, ActivityPub-based video hosting platform built by Framasoft — self-hostable instances interconnect into a network with no vendor lock-in, P2P-assisted streaming, and no ads.

15.1Kstars
1.8Kforks
GNU AGPLv3
TypeScript

PeerTube is a self-hosted video platform where each instance is independently run but federates with others over ActivityPub, the same protocol underlying Mastodon — so following a creator on one PeerTube instance can surface their videos across the wider federated network instead of locking viewers and creators into a single company’s platform.

Built by the French nonprofit Framasoft, PeerTube uses WebTorrent-based peer-assisted streaming to offload bandwidth from any single server onto viewers watching the same video, and ffmpeg for transcoding uploads into multiple resolutions. The codebase is a pnpm monorepo with an Angular client and a Node.js/TypeScript server, plus a dedicated transcription package for auto-generating captions.

AGPL-3.0 licensed with no enterprise tier, PeerTube instances are community-owned: administrators set their own moderation policy, storage limits, and federation rules, and viewers/creators aren’t locked into any single instance’s terms of service the way they would be on a centralized platform.

What You Get

  • A self-hostable video instance that federates with other PeerTube (and wider ActivityPub/Fediverse) servers
  • WebTorrent-based peer-assisted streaming that offloads bandwidth onto viewers watching the same video
  • Automatic transcoding via ffmpeg into multiple resolutions, plus a transcription package for auto-captions
  • Community-owned moderation and federation policy set independently per instance, with no central platform owner

Common Use Cases

  • Running a video platform for a community, nonprofit, or institution without depending on YouTube’s policies or ad-driven recommendation model
  • Publishing video content that federates across a network of independently run instances instead of a single centralized silo
  • Reducing self-hosting bandwidth costs for popular videos through peer-assisted streaming
  • Building a niche or regional video community with its own moderation rules that still interoperates with the wider Fediverse

Under The Hood

Architecture PeerTube is a pnpm monorepo splitting client/ (an Angular single-page app) from server/ (a Node.js/TypeScript backend under server/core), with shared utilities and tooling factored into packages/ (ffmpeg wrappers, model types, transcription, server-commands for testing). Federation is handled through ActivityPub inbox/outbox processing in the server core, meaning each instance both serves its own content and relays/receives activity from federated peers — the architectural core that makes an instance part of a network rather than an island.

Tech Stack TypeScript throughout, Angular for the client, Node.js for the server, ffmpeg for video transcoding, WebTorrent for peer-assisted P2P streaming, and a dedicated transcription package (used for automatic captioning) as a separate concern from core video serving. Managed as a pnpm workspace with per-package TypeScript configs.

Code Quality The packages/server-commands package exists specifically to support end-to-end testing against a running server, alongside a tests structure and long-running CI given the project’s maturity — consistent with a widely deployed, multi-year project backed by a nonprofit rather than a side project.

What Makes It Unique PeerTube’s defining technical choice is federating video hosting the way Mastodon federates microblogging: instances are independently operated but interoperate over ActivityPub, so no single company controls the network’s recommendation algorithm, moderation policy, or monetization terms — a structurally different model from every centralized video platform.

Self-Hosting

Licensing Model AGPL-3.0 licensed — the full platform is open source and self-hostable with no license key.

Self-Hosting Restrictions None. PeerTube has no separate enterprise or cloud-only tier; every instance runs the same open-source code, and Framasoft’s own hosted instances use it too.

License Key Required No.

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack

No spam. Unsubscribe anytime.

Join 750+ subscribers
No spam. Unsubscribe anytime.

Search