mirror of
https://onedev.site.tesses.net/tytd2025
synced 2026-06-01 18:05:32 +00:00
72 lines
3.0 KiB
Markdown
72 lines
3.0 KiB
Markdown
# TYTD 2025
|
|
My web based YouTube downloader that I created in 2025 writen in [CrossLang](https://crosslang.tesseslanguage.com/), my own language
|
|
|
|
|
|

|
|
|
|
[Website](https://crosslang.tesseslanguage.com/software/webapps/tytd2025/)
|
|
|
|
# Features
|
|
- PWA with the ability to add videos when server is down
|
|
- Can download videos, playlists and channels (you need a channel url like this [https://www.youtube.com/channel/UCBa659QWEk1AI4Tg--mrJ2A](https://www.youtube.com/channel/UCBa659QWEk1AI4Tg--mrJ2A))
|
|
- Can subscribe to channels
|
|
- Can create playlists (that are stored on the server)
|
|
- Search and browse your downloaded videos, playlists, or channels (the search is very basic though)
|
|
- User accounts
|
|
- Videos can be tagged based on your downloader's TYTD tag (to determine which instance downloaded it)
|
|
- Plugins from [CPKG](https://cpkg.tesseslangauge.com/) or any CPKG compliant server
|
|
- Can download YouTube videos either Low quality (but doesn't) require [ffmpeg](https://ffmpeg.org/), you can also download individual streams (also doesn't need [ffmpeg](https://ffmpeg.org/)), or to MP4 (doesn't work on wii due to libx264 having illegal instruction), MKV (so no transcode), MP3 or FLAC (these do need [ffmpeg](https://ffmpeg.org/) in your PATH however)
|
|
- Runs on the Wii using the [Wii Linux Continuation Project](https://wiibrew.org/wiki/Wii-Linux#Wii_Linux_Continuation_Project) (albeit extremely slowly, despite this that's where I run it)
|
|
|
|
# What this project uses (attribution)
|
|
I don't feel like storing their licenses in my project, so I link to their projects instead
|
|
|
|
- [SQLite3](https://www.sqlite.org/) for it's database (embedded into TessesFramework)
|
|
- [BeerCSS](https://www.beercss.com/) for its webui, licensed under MIT
|
|
- [HTMX](https://htmx.org/) for the SPA experience
|
|
- [FFmpeg](https://ffmpeg.org/) if you convert the videos, uses the cli
|
|
- [YouTubeExplode](https://github.com/Tyrrrz/YoutubeExplode) for some of its json payloads
|
|
- [NewPipe](https://newpipe.net/) for some of its json payloads
|
|
- [Material Symbols Font](https://fonts.google.com/icons) (wget from beercss css files)
|
|
- [VideoJS](https://videojs.org/) for video player
|
|
- [CrossLang](https://crosslang.tesseslanguage.com/) My programming language
|
|
|
|
|
|
## To Install
|
|
Install [crosslang](https://crosslang.tesseslanguage.com/downloads/index.html)
|
|
|
|
from source:
|
|
```bash
|
|
git clone https://onedev.site.tesses.net/tytd2025
|
|
cd tytd2025/Tesses.YouTubeDownloader.Server
|
|
crosslang install-webapp
|
|
```
|
|
|
|
from package manager:
|
|
```bash
|
|
crosslang install-webapp Tesses.YouTubeDownloader.Server
|
|
```
|
|
|
|
|
|
## To Run
|
|
|
|
Save to videos:
|
|
```bash
|
|
crosslang webapp tytd2025 --port=3255
|
|
```
|
|
|
|
Save to a folder (unix):
|
|
```bash
|
|
# Replace /path/to/tytd with the folder you want
|
|
export TYTDDIR=/path/to/tytd
|
|
crosslang webapp tytd2025 --port=3255
|
|
```
|
|
|
|
Save to a folder (windows):
|
|
```batch
|
|
REM Replace C:\path\to\tytd with the folder you want
|
|
SET TYTDDIR=C:\path\to\tytd
|
|
crosslang webapp tytd2025 --port=3255
|
|
```
|
|
|
|
License is GPLv3-or-later |