From ad530dad3f3ffc5b0d167e20eaca1c8014883312 Mon Sep 17 00:00:00 2001 From: Priveetee Date: Wed, 6 May 2026 05:47:16 +0200 Subject: [PATCH 1/2] docs: clarify stack installer usage --- README.md | 30 ++++++++++++++++++------------ scripts/install-stack.sh | 6 ++++-- 2 files changed, 22 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index eb337a8..501fd60 100644 --- a/README.md +++ b/README.md @@ -38,6 +38,17 @@ The app focuses on a calm interface for watching videos, managing subscriptions, - Download jobs through a separate downloader service. - A Docker Compose stack for self-hosting the frontend, backend, cache, database, token service, and artifact storage. +## Source repositories + +If you only want the source code, clone the repositories directly: + +```sh +git clone https://github.com/Priveetee/TypeType.git +git clone https://github.com/Priveetee/TypeType-Server.git +git clone https://github.com/Priveetee/TypeType-Downloader.git +git clone https://github.com/Priveetee/TypeType-Token.git +``` + ## Stack | Role | Tool | @@ -58,7 +69,7 @@ The app focuses on a calm interface for watching videos, managing subscriptions, ## Self-hosting -The fastest path is the installer: +The installer is for running the stack, not just cloning the source repositories: ```sh curl -fsSL https://raw.githubusercontent.com/Priveetee/TypeType/main/scripts/install-stack.sh | bash @@ -66,6 +77,12 @@ curl -fsSL https://raw.githubusercontent.com/Priveetee/TypeType/main/scripts/ins It installs to `~/typetype-stack`, generates local downloader credentials, chooses free ports when needed, starts the services, and bootstraps Garage. +To download stack files without starting Docker: + +```sh +curl -fsSL https://raw.githubusercontent.com/Priveetee/TypeType/main/scripts/install-stack.sh | bash -s -- --download-only +``` + For an interactive setup from a cloned repository: ```sh @@ -121,10 +138,6 @@ bun run knip bun run sherif ``` -## Docker images - -Images are published to GitHub Container Registry: `typetype`, `typetype-server`, `typetype-downloader`, and `typetype-token`. Published tags include `latest`, `main`, branch tags, release tags, and `sha-`. - ## Updating Update the whole stack: @@ -142,13 +155,6 @@ docker compose pull typetype docker compose up -d --force-recreate --no-deps typetype ``` -## Related projects - -- [TypeType-Server](https://github.com/Priveetee/TypeType-Server) is the Kotlin backend. -- [TypeType-Downloader](https://github.com/Priveetee/TypeType-Downloader) handles downloadable artifacts. -- [TypeType-Token](https://github.com/Priveetee/TypeType-Token) provides proof-of-origin tokens. -- [TypeType-Android](https://github.com/Priveetee/TypeType-Android) is the native Android client. - ## Acknowledgments TypeType is a clean rewrite, but the product direction was shaped by existing open-source video clients and extractor projects. diff --git a/scripts/install-stack.sh b/scripts/install-stack.sh index 6bb183c..0bc8f0b 100755 --- a/scripts/install-stack.sh +++ b/scripts/install-stack.sh @@ -311,8 +311,10 @@ if [[ ${START_STACK} -eq 0 ]]; then fi if ! confirm_tty "Proceed with Docker pull + startup in ${INSTALL_DIR}?"; then - echo "[install] Cancelled by user." - exit 1 + echo "[install] Stack files are ready in ${INSTALL_DIR}." + echo "[install] Docker startup skipped." + echo "[install] Next step: cd ${INSTALL_DIR} && ./scripts/setup-stack.sh" + exit 0 fi echo "[install] Pulling Docker images..." From bf7c6e6b32eae230eea0e9f04b145a84a7b3777f Mon Sep 17 00:00:00 2001 From: Priveetee Date: Wed, 6 May 2026 05:51:55 +0200 Subject: [PATCH 2/2] docs: reorder readme stack sections --- README.md | 55 ++++++++++++++++++++++++++----------------------------- 1 file changed, 26 insertions(+), 29 deletions(-) diff --git a/README.md b/README.md index 501fd60..eb42525 100644 --- a/README.md +++ b/README.md @@ -38,35 +38,6 @@ The app focuses on a calm interface for watching videos, managing subscriptions, - Download jobs through a separate downloader service. - A Docker Compose stack for self-hosting the frontend, backend, cache, database, token service, and artifact storage. -## Source repositories - -If you only want the source code, clone the repositories directly: - -```sh -git clone https://github.com/Priveetee/TypeType.git -git clone https://github.com/Priveetee/TypeType-Server.git -git clone https://github.com/Priveetee/TypeType-Downloader.git -git clone https://github.com/Priveetee/TypeType-Token.git -``` - -## Stack - -| Role | Tool | -|---|---| -| Language | TypeScript | -| Runtime | Bun | -| Build | Vite | -| UI | React | -| Routing | TanStack Router | -| Server state | TanStack Query | -| Client state | Zustand | -| Player | Vidstack | -| Styling | Tailwind CSS | -| Components | shadcn/ui + Radix UI | -| Quality | Biome, Sherif, Knip | -| Deployment | Docker Compose | -| License | MIT | - ## Self-hosting The installer is for running the stack, not just cloning the source repositories: @@ -101,6 +72,32 @@ docker compose ps Default local endpoints are `http://localhost:8082` for the frontend, `http://localhost:8080` for the API, and `http://localhost:8081` for the token service. Host ports can be changed through `.env`. +## Stack + +| Role | Tool | +|---|---| +| Language | TypeScript TypeScript | +| Runtime | Bun Bun | +| Build | Vite Vite | +| UI | React React | +| Routing and server state | TanStack TanStack Router + Query | +| Styling | Tailwind CSS Tailwind CSS | +| Components | shadcn/ui shadcn/ui + Radix UI Radix UI | +| Quality | Biome Biome + Knip Knip | +| Deployment | Docker Docker Compose | +| License | MIT | + +## Source repositories + +If you only want the source code, clone the repositories directly: + +```sh +git clone https://github.com/Priveetee/TypeType.git +git clone https://github.com/Priveetee/TypeType-Server.git +git clone https://github.com/Priveetee/TypeType-Downloader.git +git clone https://github.com/Priveetee/TypeType-Token.git +``` + ## Local development Install dependencies: