X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=README.md;h=0f288fa3ffba69fc12cd8076449a43f26460a7a1;hb=7461d440c284459525c03accbde4d5cd18a59725;hp=cf64415d6d559ec28d60b833c8da64cf07140ffd;hpb=c4ac459314d89cdb7058db18e8deee748934bcbc;p=oweals%2Fpeertube.git diff --git a/README.md b/README.md index cf64415d6..0f288fa3f 100644 --- a/README.md +++ b/README.md @@ -9,11 +9,33 @@ | Join an instance | Create an instance | Chat with us + | Donate

-Federated (ActivityPub) video streaming platform using P2P (BitTorrent) -directly in the web browser with WebTorrent. +Be part of a network of multiple small federated, interoperable video hosting providers. Follow video creators and create videos. No vendor lock-in. All on a platform that is community-owned and ad-free. +

+ +

+:rocket::rocket::rocket: +

+ +

+Check, share and support PeerTube's v3 roadmap on https://joinpeertube.org/roadmap +

+ +

+:rocket: :rocket: :rocket: +

+ +

+ Developed with ❤ by Framasoft +

+ +

+ + Framasoft logo +

@@ -24,9 +46,9 @@ directly in the web browser with devDependency Status - - - + + +

@@ -35,8 +57,8 @@ directly in the web browser with
-
- Build Status + + pipeline status @@ -56,10 +78,29 @@ directly in the web browser with

- screenshot + screenshot

+Introduction +---------------------------------------------------------------- + +PeerTube is a free, decentralized and federated video platform developed as an alternative to other platforms that centralize our data and attention, such as YouTube, Dailymotion or Vimeo. :clapper: + +But one organization hosting PeerTube alone may not have enough money to pay for bandwidth and video storage of its servers, +all servers of PeerTube are interoperable as a federated network, and non-PeerTube servers can be part of the larger Vidiverse +(federated video network) by talking our implementation of ActivityPub. +Video load is reduced thanks to P2P in the web browser using WebTorrent or p2p-media-loader. + +To learn more, see: +* This [two-minute video](https://framatube.org/videos/watch/217eefeb-883d-45be-b7fc-a788ad8507d3) (hosted on PeerTube) explaining what PeerTube is and how it works +* PeerTube's project homepage, [joinpeertube.org](https://joinpeertube.org) +* Demonstration instances: + * [peertube.cpy.re](https://peertube.cpy.re) + * [peertube2.cpy.re](https://peertube2.cpy.re) + * [peertube3.cpy.re](https://peertube3.cpy.re) +* This [video](https://peertube.cpy.re/videos/watch/da2b08d4-a242-4170-b32a-4ec8cbdca701) demonstrating the communication between PeerTube and [Mastodon](https://github.com/tootsuite/mastodon) (a decentralized Twitter alternative) + :sparkles: Features ---------------------------------------------------------------- @@ -75,7 +116,7 @@ Just upload your videos, and be sure they will stream anywhere. Add a descriptio

Keep in touch with video creators

-Follow your favorite channels from PeerTube or really any other place. No need to have an account on the instance you watched a video to follow its author, you can do all of that from the Fediverse (Mastodon, Pleroma and plenty others), or just with good ol' RSS. +Follow your favorite channels from PeerTube or really any other place. No need to have an account on the instance you watched a video to follow its author, you can do all of that from the Fediverse (Mastodon, Pleroma, and plenty others), or just with good ol' RSS.

--- @@ -91,35 +132,29 @@ Be it as a user or an instance administrator, you can decide what your experienc

Communities that help each other

-In addition to visitors using WebTorrent to share the load among them, instances can help each other by caching one another's videos. This way even small instances have a way to show content to a wider audience, as they will be shouldered by friend instances (more about that in our redundancy guide). +In addition to visitors using WebTorrent to share the load among them, instances can help each other by caching one another's videos. This way even small instances have a way to show content to a wider audience, as they will be shouldered by friend instances (more about that in our redundancy guide).

-Content creators can get help from their viewers in the simplest way possible: a support button showing a message linking to their donation accounts or really anything else. No more pay-per-view and advertisements that hurt visitors and incentivize alter creativity (more about that in our FAQ). +Content creators can get help from their viewers in the simplest way possible: a support button showing a message linking to their donation accounts or really anything else. No more pay-per-view and advertisements that hurt visitors and incentivize alter creativity (more about that in our FAQ).

---- +:raised_hands: Contributing +---------------------------------------------------------------- -Want to see it in action? +You don't need to be a coder to help! - * Demonstration servers: - * [peertube.cpy.re](https://peertube.cpy.re) - * [peertube2.cpy.re](https://peertube2.cpy.re) - * [peertube3.cpy.re](https://peertube3.cpy.re) - * [Video](https://framatube.org/videos/watch/217eefeb-883d-45be-b7fc-a788ad8507d3) explaining what PeerTube is - * [Video](https://peertube.cpy.re/videos/watch/da2b08d4-a242-4170-b32a-4ec8cbdca701) showing the communication between PeerTube and [Mastodon](https://github.com/tootsuite/mastodon) +You can give us your feedback, report bugs, help us translate PeerTube, write documentation, and more. Check out the [contributing +guide](https://github.com/Chocobozzz/PeerTube/blob/develop/.github/CONTRIBUTING.md) to know how, it takes less than 2 minutes to get started. :wink: -:question: Motivation ----------------------------------------------------------------- +You can also join the cheerful bunch that makes our community: -We can't build a FOSS video streaming alternative to YouTube, Dailymotion, -Vimeo... with centralized software. One organization alone may not have -enough money to pay for bandwidth and video storage of its servers. +* Chat: + * IRC : **[#peertube on chat.freenode.net:6697](https://kiwiirc.com/client/irc.freenode.net/#peertube)** + * Matrix (bridged on IRC and [Discord](https://discord.gg/wj8DDUT)) : **[#peertube:matrix.org](https://matrix.to/#/#peertube:matrix.org)** +* Forum: + * Framacolibri: [https://framacolibri.org/c/peertube](https://framacolibri.org/c/peertube) -So we need to have a decentralized network of servers seeding videos (as -[Diaspora](https://github.com/diaspora/diaspora) for example). But it's not -enough because one video could become popular and overload the server. That is -why we need to use a P2P protocol to limit the server load. Thanks to -[WebTorrent](https://github.com/feross/webtorrent), we can make BitTorrent inside the web browser, as of today. +Feel free to reach out if you have any questions or ideas! :speech_balloon: :package: Create your own instance ---------------------------------------------------------------- @@ -129,81 +164,42 @@ why we need to use a P2P protocol to limit the server load. Thanks to * nginx * **PostgreSQL >= 9.6** * **Redis >= 2.8.18** - * **NodeJS >= 8.x** + * **NodeJS >= 10.x** * **yarn >= 1.x** * **FFmpeg >= 3.x** -See the [production guide](/support/doc/production.md), which is the recommended way. - -See the [community packages](https://docs.joinpeertube.org/lang/en/docs/install.html), which cover various platforms (including [YunoHost](https://install-app.yunohost.org/?app=peertube) and [Docker](/support/doc/docker.md)). - -:wrench: Contribute/Translate/Test ----------------------------------------------------------------- - -*Spoiler alert*: you don't need to be a coder to help! - -See the [contributing -guide](/.github/CONTRIBUTING.md). Or simply join the cheerful bunch that makes our community: +See the [production guide](https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/production.md), which is the recommended way to install or upgrade PeerTube. For hardware requirements, see [Should I have a big server to run PeerTube?](https://github.com/Chocobozzz/PeerTube/blob/develop/FAQ.md#should-i-have-a-big-server-to-run-peertube) in the FAQ. - * Chat: - * IRC : **[#peertube on chat.freenode.net:6697](https://kiwiirc.com/client/irc.freenode.net/#peertube)** - * Matrix (bridged on the IRC channel) : **[#peertube:matrix.org](https://matrix.to/#/#peertube:matrix.org)** - * Forum: - * Framacolibri: [https://framacolibri.org/c/peertube](https://framacolibri.org/c/peertube) +See the [community packages](https://docs.joinpeertube.org/#/install-unofficial), which cover various platforms (including [YunoHost](https://install-app.yunohost.org/?app=peertube) and [Docker](https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/docker.md)). :book: Documentation ---------------------------------------------------------------- -If you have a question, please try to find the answer in the [FAQ](/FAQ.md) first. +If you have a question, please try to find the answer in the [FAQ](https://github.com/Chocobozzz/PeerTube/blob/develop/FAQ.md) first. ### User documentation -See the [user documentation](https://docs.joinpeertube.org/lang/en/userdocs/). +See the [user documentation](https://docs.joinpeertube.org/#/use-setup-account). ### Admin documentation -See [how to create your own instance](#package-create-your-own-instance). +See [how to create your own instance](https://github.com/Chocobozzz/PeerTube/blob/develop/README.md#package-create-your-own-instance). -See the more general [admin documentation](https://docs.joinpeertube.org/lang/en/docs/). +See the more general [admin documentation](https://docs.joinpeertube.org/#/admin-following-instances). -#### Tools +### Tools documentation - * [Import videos (YouTube, Dailymotion, Vimeo...)](/support/doc/tools.md) - * [Upload videos from the CLI](/support/doc/tools.md) - * [Admin server tools (create transcoding jobs, prune storage...)](/support/doc/tools.md#server-tools) +Learn how to import/upload videos from CLI or admin your PeerTube instance with the [tools documentation](https://docs.joinpeertube.org/#/maintain-tools). ### Technical documentation -See [ARCHITECTURE.md](/ARCHITECTURE.md) for a more detailed explanation of the architectural choices. +See the [architecture blueprint](https://docs.joinpeertube.org/#/contribute-architecture) for a more detailed explanation of the architectural choices. -#### Backend - - * REST API: - * Quick Start: [/support/doc/api/quickstart.md](/support/doc/api/quickstart.md) - * Swagger/OpenAPI schema: [/support/doc/api/openapi.yaml](/support/doc/api/openapi.yaml) - * HTML explorer: [/support/doc/api/html/index.html](https://htmlpreview.github.io/?https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/api/html/index.html) - * Servers communicate with each other with [Activity - Pub](https://www.w3.org/TR/activitypub/). - * Each server has its own users who query it (search videos, query where the - torrent URI of this specific video is...). - * When a user uploads a video, the server sends its followers metadata about the video (name, short description, torrent URI...). - * A server is a tracker responsible for all the videos uploaded on it. - * Even if nobody watches a video, it is seeded by the server (through - [WebSeed protocol](http://www.bittorrent.org/beps/bep_0019.html)) where the - video was uploaded. - -Here are some simple schemes: - -

- -Decentralized - -Watch a video - -Watch a P2P video - -

+See our REST API documentation: + * OpenAPI 3.0.0 schema: [/support/doc/api/openapi.yaml](https://github.com/Chocobozzz/PeerTube/blob/support/doc/api/openapi.yaml) + * Spec explorer: [docs.joinpeertube.org/api-rest-reference.html](https://docs.joinpeertube.org/api-rest-reference.html) +See our [ActivityPub documentation](https://docs.joinpeertube.org/#/api-activitypub). :heart: Supports of our crowdfunding ---------------------------------------------------------------- @@ -215,11 +211,11 @@ Quonfucius, IP Solution, \_Laure\_, @lex666, 0x010C, 3dsman, 3rw4n-G3D, aallrd, ## License -Copyright (C) 2018 PeerTube Contributors +Copyright (C) 2015-2020 PeerTube Contributors This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published -by the Free Software Foundation, either version 3 of the License, or +by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful,