From 02b10131f98e0498a54fbff2bf33d782cbf82e80 Mon Sep 17 00:00:00 2001 From: Mike Nolan Date: Thu, 29 Jan 2026 16:40:33 -0600 Subject: [PATCH] Fix bugs and make the readme better --- README.md | 53 +++++++++++++------ .../src/main.tcross | 2 +- .../src/pages/oobe/page3.tcross | 4 +- .../src/pages/welcome.tcross | 2 +- 4 files changed, 41 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index 1664e2d..faf1e02 100644 --- a/README.md +++ b/README.md @@ -1,39 +1,58 @@ # TYTD 2025 -A YouTube downloader writen in [CrossLang](https://crosslang.tesseslanguage.com/) +My web based YouTube downloader that I created in 2025 writen in [CrossLang](https://crosslang.tesseslanguage.com/), my own language + + +![The Image](https://crosslang.tesseslanguage.com/images/tytdscreenshot.jpg) + +[Website](https://crosslang.tesseslanguage.com/software/webapps/tytd2025/) + +# Features +- Uses [SQLite3](https://www.sqlite.org/) for it's database (embedded into TessesFramework) +- 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) + ## To Install Install [crosslang](https://crosslang.tesseslanguage.com/downloads/index.html) from source: ```bash -cd Tesses.YouTubeDownloader.Server +git clone https://onedev.site.tesses.net/tytd2025 +cd tytd2025/Tesses.YouTubeDownloader.Server crosslang install-webapp - -# Save to Videos -crosslang webapp tytd2025 --port=3255 - -# Save anywhere (unix, replace /path/to/tytd with the folder you want) -export TYTDDIR=/path/to/tytd -crosslang webapp tytd2025 --port=3255 - -# Save anywhere (windows, replace C:\path\to\tytd with the folder you want) -SET TYTDDIR=/path/to/tytd -crosslang webapp tytd2025 --port=3255 ``` from package manager: ```bash crosslang install-webapp Tesses.YouTubeDownloader.Server +``` -# Save to Videos + +## To Run + +Save to videos: +```bash crosslang webapp tytd2025 --port=3255 +``` -# Save anywhere (unix, replace /path/to/tytd with the folder you want) +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 anywhere (windows, replace C:\path\to\tytd with the folder you want) -SET TYTDDIR=/path/to/tytd +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 ``` diff --git a/Tesses.YouTubeDownloader.Server/src/main.tcross b/Tesses.YouTubeDownloader.Server/src/main.tcross index cb1309d..0c90b65 100644 --- a/Tesses.YouTubeDownloader.Server/src/main.tcross +++ b/Tesses.YouTubeDownloader.Server/src/main.tcross @@ -151,7 +151,7 @@ class TYTDApp { case 3: { - const createUser = ctx.QueryParams.GetFirstBoolean("user"); + const createUser = (ctx.QueryParams.TryGetFirst("user") ?? "no")=="yes"; var seconds = this.OOBE_STATE.pollSeconds; seconds += this.OOBE_STATE.pollMinutes * 60; diff --git a/Tesses.YouTubeDownloader.Server/src/pages/oobe/page3.tcross b/Tesses.YouTubeDownloader.Server/src/pages/oobe/page3.tcross index de82c4c..33fde84 100644 --- a/Tesses.YouTubeDownloader.Server/src/pages/oobe/page3.tcross +++ b/Tesses.YouTubeDownloader.Server/src/pages/oobe/page3.tcross @@ -12,7 +12,9 @@ func Pages.OobePage3()
- 2 + + done +
Plugins

diff --git a/Tesses.YouTubeDownloader.Server/src/pages/welcome.tcross b/Tesses.YouTubeDownloader.Server/src/pages/welcome.tcross index ccb951e..1dd5741 100644 --- a/Tesses.YouTubeDownloader.Server/src/pages/welcome.tcross +++ b/Tesses.YouTubeDownloader.Server/src/pages/welcome.tcross @@ -3,7 +3,7 @@ func Pages.Welcome(redirect) const html =

You are all set

- This is Tesses YouTube Downloader 2025, a YouTube Downloader created in CrossLang + This is Tesses YouTube Downloader 2025, a YouTube Downloader created in CrossLang

home Home

Once you click the {"I'm Done"} button, you will be able to add YouTube videos to the downloader by using add, you can download the video from the server using download or view metadata/watch the video using info (this also will allow you to view playlist/channel contents)