You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+20-9Lines changed: 20 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,9 +3,9 @@
3
3
**youtube2txt** (YouTube Transcript Grabber) — A robust, locally-hosted tool to extract clean transcripts from any YouTube video. It runs on your own machine to bypass YouTube's IP blocks on public proxies, ensuring high reliability by using the powerful `yt-dlp` engine under the hood.
4
4
5
5
> [!IMPORTANT]
6
-
> This tool must be hosted locally on your own machine to avoid IP blocks from YouTube.
6
+
> This tool must run locally to avoid YouTube IP blocks. It uses your own IP, which YouTube trusts, so transcript fetches are far more reliable.
7
7
8
-
Since this tool runs **locally**, it uses your residential IP address, which YouTube trusts, effectively eliminating these errors.
8
+
<br>
9
9
10
10
## Features
11
11
@@ -17,6 +17,8 @@ Since this tool runs **locally**, it uses your residential IP address, which You
17
17
18
18
[yt-dlp](https://github.com/yt-dlp/yt-dlp) is a powerful, open-source command-line tool used to extract information and download media from YouTube and thousands of other sites. In this project, it is used as the core engine to fetch high-quality, timed transcripts while handling YouTube's complex anti-bot measures better than standard web crawlers.
- **Auto-connect to Local Server**: [https://spacesoda.github.io/youtube2txt/?apiBase=http://localhost:3000](https://spacesoda.github.io/youtube2txt/?apiBase=http://localhost:3000)
68
68
69
+
### Optional Environment Variables
70
+
- `YTDLP_PATH`: Use an existing `yt-dlp` binary from a custom path.
71
+
- `YTDLP_COOKIES`: Path to a cookies file for YouTube (helps with rate limits).
72
+
- `HOST`: Override the server host (default is 0.0.0.0).
73
+
- `PORT`: Override the server port (default is 3000).
74
+
69
75
### Per-project Node Version
70
76
To keep Node isolated and avoid conflicts with other projects:
71
77
- **nvm (macOS/Linux)**: run `nvm install`then`nvm use` (this repo includes `.nvmrc`).
@@ -79,13 +85,18 @@ To keep Node isolated and avoid conflicts with other projects:
79
85
- `EADDRINUSE`: port 3000 is busy. Run with `PORT=3001 npm start`.
80
86
- `npm ERR! network`: network or proxy issue. Try again or switch networks.
81
87
82
-
## Release (for devs)
83
-
To publish a new release with app files reliably included, tag the release and push the tag using the following commands:
88
+
<br>
89
+
90
+
## Publishing a Release
91
+
92
+
To publish a new release with app files reliably included, use the following commands:
<p><strongid="localReminderTitle">Local Server Not Running</strong></p>
51
-
<pid="localReminderMessage"><ahref="https://github.com/SPACESODA/youtube2txt/releases/latest" target="_blank" rel="noopener noreferrer">Download</a> and open the desktop app → Click the tray icon to open on browser.</p>
52
-
<pid="localReminderAction">Prefer the CLI? Run "npm run quickstart" from the repo (<ahref="https://github.com/SPACESODA/youtube2txt" target="_blank" rel="noopener noreferrer">GitHub</a>).</p>
51
+
<pid="localReminderMessage"><ahref="https://github.com/SPACESODA/youtube2txt/releases/latest" target="_blank" rel="noopener noreferrer">Download</a> and open the desktop app → Click the tray icon to open on browser</p>
52
+
<pid="localReminderAction">Prefer CLI? Run "npm run quickstart" from the <ahref="https://github.com/SPACESODA/youtube2txt" target="_blank" rel="noopener noreferrer">repo</a></p>
0 commit comments