fix type and run formatter

This commit is contained in:
FireMasterK 2021-02-07 21:08:23 +05:30
parent 44298d0f39
commit d02269972a
No known key found for this signature in database
GPG Key ID: 8DFF5DD33E93DB58
4 changed files with 55 additions and 50 deletions

View File

@ -1,5 +1,5 @@
---
title: 'Piped'
title: "Piped"
---
Piped is a privacy friendly alternative YouTube frontend, which is efficient and scalable by design.

View File

@ -1,5 +1,5 @@
---
title: 'Overview'
title: "Overview"
weight: 1
---

View File

@ -1,36 +1,39 @@
---
title: 'Architecture'
title: "Architecture"
weight: 4
summary: What is Piped architectured?
summary: How is Piped architectured?
---
## What is Piped's architecture?
## How is Piped's architecture?
Piped has 3 components:
- A frontend in VueJS
- A backed in Java which uses NewPipeExtractor
- A proxy in Golang
- 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.
- 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)
- 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.
- 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

View File

@ -1,5 +1,5 @@
---
title: 'Why'
title: "Why"
weight: 4
summary: Why did I create Piped?
---
@ -10,22 +10,22 @@ YouTube has an extremely invasive privacy policy which relies on using user data
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
- 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
@ -34,19 +34,21 @@ 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.
- 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.
- 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
- JavaScript is required
- Browsers without Service-Workers support will feel significantly slower. Eg: Tor Browser