-
Notifications
You must be signed in to change notification settings - Fork 24
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
2538024
commit 5e6ab2a
Showing
14 changed files
with
182 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
# Hugo default output directory | ||
/public | ||
|
||
/resources |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
[submodule "themes/hugo-whisper-theme"] | ||
path = themes/hugo-whisper-theme | ||
url = https://github.com/zerostaticthemes/hugo-whisper-theme.git |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,3 @@ | ||
# Documentation | ||
# Documentation | ||
|
||
Documentation on the core architecture of Piped and it's backend. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
--- | ||
title: "{{ replace .Name "-" " " | title }}" | ||
date: {{ .Date }} | ||
draft: true | ||
--- | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
--- | ||
title: "{{ replace .TranslationBaseName "-" " " | title }}" | ||
date: {{ .Date }} | ||
draft: false | ||
weight: 100 | ||
--- | ||
|
||
Lorem markdownum aequalis strigis. Saetigeri iubeas, vultu huic alvum nondum | ||
de obside ut laniavit arbor palmis, cum quin. Rupes vetat videndo, armigerae | ||
crimen habet Priamum nec. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,48 @@ | ||
baseURL = "piped-docs.kavin.rocks" | ||
languageCode = "en-us" | ||
title = "Piped" | ||
themesDir = "themes" | ||
theme = "hugo-whisper-theme" | ||
|
||
pygmentsCodeFences = true | ||
pygmentsCodefencesGuessSyntax = true | ||
pygmentsUseClasses = true | ||
|
||
# Controls how many words are printed in the content summary on the docs homepage. | ||
# See https://gohugo.io/content-management/summaries/ | ||
summaryLength = 30 | ||
|
||
[[menu.main]] | ||
name = "Home" | ||
url = "/" | ||
weight = 1 | ||
|
||
[[menu.main]] | ||
name = "Docs" | ||
url = "/docs/" | ||
weight = 2 | ||
|
||
[params] | ||
google_analytics_id="" | ||
homepage_button_link = '/docs' | ||
homepage_button_text = 'Read The Docs' | ||
homepage_intro = 'Piped is a privacy friendly alternative YouTube frontend, which is efficient and scalable by design.' | ||
homepage_image = '/images/banner.webp' | ||
|
||
## You can enable to add anchor links to header elements | ||
# enable_anchor_link = true | ||
|
||
[params.homepage_meta_tags] | ||
meta_description = "Piped is a privacy friendly alternative YouTube frontend, which is efficient and scalable by design." | ||
meta_og_title = "Piped" | ||
meta_og_type = "website" | ||
meta_og_url = "https://piped-docs.kavin.rocks" | ||
meta_og_image = "https://avatars.githubusercontent.com/u/74294114?s=250" | ||
meta_og_description = "Piped is a privacy friendly alternative YouTube frontend, which is efficient and scalable by design." | ||
meta_twitter_card = "summary" | ||
meta_twitter_site = "" | ||
meta_twitter_creator = "" | ||
|
||
[params.logo] | ||
mobile = "/images/logo.svg" | ||
standard = "/images/logo.svg" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
--- | ||
title: 'Piped' | ||
--- | ||
|
||
Piped is a privacy friendly alternative YouTube frontend, which is efficient and scalable by design. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
--- | ||
title: 'Overview' | ||
weight: 1 | ||
--- | ||
|
||
## Piped | ||
|
||
Welcome to the Documentation of Piped. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
--- | ||
title: 'Architecture' | ||
weight: 4 | ||
summary: What is Piped architectured? | ||
--- | ||
|
||
## What is Piped's architecture? | ||
|
||
Piped has 3 components: | ||
|
||
- A frontend in VueJS | ||
- A backed in Java which uses NewPipeExtractor | ||
- A proxy in Golang | ||
|
||
links: https://github.com/TeamPiped/Piped\, https://github.com/TeamPiped/Piped-Backend and, https://github.com/FireMasterK/http3-ytproxy | ||
|
||
## Frontend | ||
- Uses videojs | ||
- Uses a router for a single page application. | ||
|
||
## Backend | ||
- Uses Java 11 | ||
- Uses the native HTTP client introduced in Java 9 | ||
- Uses netty-reactor to acheive maximum performance and a low footprint. | ||
- Supports OpenJ9 | ||
- Each running instance should configure their own proxy, thus allowing multi-gigabit content delivery. | ||
- Uses ~70-130 MB of ram. (on OpenJ9) | ||
|
||
# Proxy | ||
- Uses Golang | ||
- Has HTTP/2 support. (HTTP/3 is unstable in the current library) | ||
- Low memory footprint and high throughput. | ||
- Can be used to replace the proxy in various other frontends. | ||
|
||
# Server-Side Caching | ||
|
||
Caching is done at a Reverse-Proxy/CDN level to reduce the load to the backend. This also makes it more scalable. | ||
|
||
# LBRY | ||
|
||
LBRY streams are automatically added to stream content via LBRY if the same video is available there. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
--- | ||
title: 'Why' | ||
weight: 4 | ||
summary: Why did I create Piped? | ||
--- | ||
|
||
## Why did I create Piped? | ||
|
||
YouTube has an extremely invasive privacy policy which relies on using user data in unethical ways. | ||
|
||
Here are some things about YouTube: | ||
|
||
- Tracking via third-party cookies for other purposes without your consent. | ||
- YouTube can delete your content if you violate the terms | ||
- Reduction of legal period for cause of action | ||
- YouTube may use your personal information for marketing purposes | ||
- YouTube can view your browser history | ||
- YouTube can use your content for all their existing and future services | ||
- YouTube gathers information about you through third parties | ||
- YouTube can license user content to third parties | ||
- YouTube provider makes no warranty regarding uninterrupted, timely, secure or error-free service | ||
- Deleted videos are not really deleted | ||
- Your data may be processed and stored anywhere in the world | ||
- YouTube is only available to users over a certain age | ||
- YouTube can suspend your account for several reasons | ||
- YouTube has non-exclusive use of your content | ||
- The court of law governing the terms is in the US | ||
- YouTube collects your IP address for location use | ||
|
||
Source: https://tosdr.org/en/service/274 | ||
|
||
A lot of inspiration came from NewPipe and Invidious. | ||
|
||
I created Piped to fix issues in NewPipe and Invidious which are architectural issues and cannot be fixed easily. | ||
|
||
### NewPipe | ||
- Your IP is exposed to YouTube. | ||
- Feeds are slow to load. | ||
|
||
### Invidious | ||
- Uses way too much resources. | ||
- Total bandwidth limited by the peak capacity of the load balancer. | ||
- Coded in Crystal, a language that is relatively hard for beginners. | ||
- Caching is done at a backend level. | ||
- Invidious was a learning project. | ||
- Invidious crashes all the time. | ||
- Various hacks are required to keep an instance running at a reasonable stablity. | ||
|
||
However, there are some drawbacks of Piped: | ||
|
||
- JavaScript is required | ||
- Browsers without Service-Workers support will feel significantly slower. Eg: Tor Browser |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Submodule hugo-whisper-theme
added at
6638af