From 947a68442a77bcf957c24260f27c413ba921890e Mon Sep 17 00:00:00 2001 From: Miguel Ángel Moreno Date: Sun, 18 Feb 2024 17:58:24 +0100 Subject: chore: correctly export README to .github --- .github/README.md | 153 +++++++++++++++++++++++++++++++++++++++++++++++++++++- README | 2 +- README.md | 2 +- 3 files changed, 154 insertions(+), 3 deletions(-) mode change 120000 => 100644 .github/README.md diff --git a/.github/README.md b/.github/README.md deleted file mode 120000 index 4ed0bf0..0000000 --- a/.github/README.md +++ /dev/null @@ -1 +0,0 @@ -/home/vega/src/projects/tubo/README.md \ No newline at end of file diff --git a/.github/README.md b/.github/README.md new file mode 100644 index 0000000..1906bb1 --- /dev/null +++ b/.github/README.md @@ -0,0 +1,152 @@ + + +# Tubo + +Tubo is a streaming front-end focused on bringing the [NewPipe](https://github.com/TeamNewPipe/NewPipe) experience to the web. It aims at providing a clean and simple user interface to consume media from your favorite streaming platforms. It currently supports the same services as NewPipe, including YouTube, SoundCloud, Bandcamp, and more. + +To retrieve the data, it wraps the excellent [NewPipe Extractor](https://github.com/TeamNewPipe/NewPipeExtractor) library and it exposes the extracted data over a REST API that is consumed by a local re-frame SPA. + + +## Features + +- [X] No ads +- [X] Audio player +- [X] Media queue +- [X] Playlists +- [X] Settings +- [ ] Subscriptions +- [ ] User login + + +## Instances + + + + +++ ++ + + + + + + + + + + + + + +
URLCountry
https://tubo.migalmoreno.com (Official)🇪🇸
+ +If you consider self-hosting Tubo let me know about your instance via the [contribution methods](#orgd79ed13). See [installation](#orgfb29fa4) for ways to set up Tubo in your server. + + +## Installation + + +### Packaging + +- Uberjar + + To bundle the whole project into a self-contained uber-jar you need to follow these build steps: + + npm i + npm run build + clojure -T:frontend:build uberjar + + After the last command is completed, you'll get a path to the uber-jar, which you can run like this: + + java -jar target/tubo-.jar + +- Docker + + Alternatively, you can use Docker to set up Tubo. Simply invoke this: + + docker-compose up -d + +- Manual + + You can also set up Tubo manually via the [GNU Guix](https://guix.gnu.org/) package manager. First, download the necessary tooling: + + cd /path/to/tubo + guix shell + + Then, compile the downloader ahead-of-time: + + clojure -M -e "(compile 'tubo.downloader-impl)" + + Fetch the front-end dependencies and build the front-end assets. + + npm i + npm run build + + Finally, compile the front-end. + + clojure -M:frontend release tubo + + You can now start a local server that listens on port 3000 by running this: + + clojure -M:run + + Access the front-end in your browser at `http://localhost:3000`. + + +### Reverse Proxy + +If you want to self-host Tubo and make it publicly accessible you'll need to set up a reverse proxy. + +- Nginx + + server { + listen 443 ssl http2; + server_name tubo.; + ssl_certificate /etc/letsencrypt/live/tubo./fullchain.pem; + ssl_certificate_key /etc/letsencrypt/live/tubo./privkey.pem; + + location / { + proxy_pass http://localhost:3000; + proxy_set_header X-Forwarded-For $remote_addr; + proxy_set_header HOST $http_host; + } + } + + +## Screenshots + + + + +++ ++ ++ + + + + + + + + + + + + + + + +
KioskChannelStream
tubo_kiosk.jpgtubo_channel.jpgtubo_stream.jpg
+ + +## Contributing + +Feel free to open an issue with bug reports or feature requests. PRs are more than welcome too. + diff --git a/README b/README index 78c5e9c..3a50738 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -# -*- mode: org; org-html-head-include-default-style: nil; org-html-postamble: nil; after-save-hook: org-md-export-to-markdown; -*- +# -*- mode: org; org-html-head-include-default-style: nil; org-html-postamble: nil; after-save-hook: (lambda nil (org-export-to-file 'md (org-export-output-file-name ".md")) (org-export-to-file 'md (org-export-output-file-name ".md" nil ".github/"))); -*- #+OPTIONS: toc:nil num:nil * Tubo Tubo is a streaming front-end focused on bringing the [[https://github.com/TeamNewPipe/NewPipe][NewPipe]] experience to the web. It aims at providing a clean and simple user interface to consume media from your favorite streaming platforms. It currently supports the same services as NewPipe, including YouTube, SoundCloud, Bandcamp, and more. diff --git a/README.md b/README.md index f7af4ea..211cf17 100644 --- a/README.md +++ b/README.md @@ -43,7 +43,7 @@ To retrieve the data, it wraps the excellent [NewPipe Extractor](https://github. -If you consider self-hosting Tubo let me know about your instance via the [contribution methods](#org2c797ae). See [installation](#orgc5e387d) for ways to set up Tubo in your server. +If you consider self-hosting Tubo let me know about your instance via the [contribution methods](#org38d0a10). See [installation](#org20cbb90) for ways to set up Tubo in your server. ## Installation -- cgit v1.2.3