youtube-digest: a Chrome side panel that turns a watch page into a study resource
Turn YouTube videos into deep learning resources with transcripts, bilingual translation, AI overviews, explanations, and notes. Bring your own keys.
At a glance
- What is it?
- An unpacked Chrome extension that pulls YouTube transcripts, adds a Chinese or bilingual reading mode, and generates overviews and timestamped notes through your own DeepSeek and Supadata keys. No store listing, no operated server, and updates are entirely manual.
- Who is it for?
- This extension is a good fit for one specific habit: watching a lecture or talk with captions and wanting the transcript, a translation and a summary in the same panel without leaving the page. The fixed DeepSeek V4 Flash configuration means you get predictable latency and one credential, and you give up the ability to switch providers from the Settings UI.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 43 days ago.
- What is it written in?
- Mainly JavaScript, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 8, 2026, and from our analysis. They are not legal advice.
Editorial analysis
An extension you install unpacked rather than from a store
youtube-digest is distributed as source you clone or download yourself. The README is explicit that it is a bring-your-own-key project installed locally from GitHub, that it is not available through the Chrome Web Store, that it includes no API credits, and that it does not run a developer-operated server. That last point is the interesting one. There is no backend of the author's for your data to pass through, because the extension calls the transcript provider and the model provider directly from the browser with your keys.
The manual install is a fixed sequence: open the repository, choose Code then Download ZIP, unzip into a permanent folder, open `chrome://extensions`, turn on Developer mode, click Load unpacked, and select the folder that contains `manifest.json`. Pinning the extension from Chrome's Extensions menu is optional.
The permanent-folder instruction is not advice, it is a requirement. Moving or deleting the source folder breaks the unpacked extension until you load it again from its new location, and because unpacked extensions do not update themselves, a new version means downloading it and clicking Reload on the extension's card, then refreshing open YouTube tabs.
Two API keys and one model that cannot be changed in Settings
Setup needs exactly two credentials. A Supadata API key retrieves YouTube transcripts, and a DeepSeek API key handles overviews, explanations, translation and automatic note polishing. Both are pasted into the extension's own Settings page, which you reach from the side panel, from the Options page linked on the `chrome://extensions` card, or by right-clicking the toolbar icon.
The provider configuration is not a free choice in the shipped build. The README states the published version supports DeepSeek V4 Flash as its only AI provider:
Base URL: https://api.deepseek.com
Model: deepseek-v4-flashRequests are sent in non-thinking mode, which the README ties to responsive, predictable interaction rather than deeper reasoning. Because the endpoint and model are fixed in Settings, the only AI credential you ever enter is the DeepSeek key. Switching to another provider means copying the customization prompt that Settings exposes, handing it to a coding agent, and having that agent edit your local copy. That is a deliberate fork in the road: the extension is configurable for people willing to modify source, not for people who want a provider dropdown.
Keys and settings live in Chrome's local extension storage on your own machine. The README adds that release builds do not include or use `config.js`, which closes off a plausible path for a build-time key leak. Its guidance about keys is unusually firm: never paste one into an AI chat, a repository file, a screenshot or a public message.
What v1.2.0 changed in the transcript, overview and notes
Version 1.2.0 was published on 2026-08-25 and the release notes list five changes, which together describe a project tightening its study workflow rather than adding a new surface.
The headline addition is transcript search: you can search words or phrases and step through every match. For a long interview or lecture, that is the feature that decides whether the transcript is usable or merely present. Second, the Original, Chinese and bilingual setting now applies as one choice across Transcript, Overview and Notes, with new videos defaulting to Original. Before this, the same video could present three panels in three different languages depending on which one you opened.
Third, visible Overview and Notes content is translated progressively in small cached batches, so you get usable output without waiting for an entire panel to translate at once, and repeat views come from cache. Fourth, selected transcript text can be explained by the model or saved directly as a timestamped note. Fifth, the extension preserves your transcript reading position and closes the panel automatically when you are not on a YouTube video page, so navigating to a comment thread or a channel page does not leave a stale panel in the way.
The release ships as a ZIP with a published SHA-256 checksum, and installation is replace your local files, reload at `chrome://extensions`, refresh open tabs. The last push to the repository was on 2026-08-27.
Reading modes designed for language study
The feature list on the README frames the project as language and comprehension support rather than summarisation. You get the original transcript, a Simplified Chinese translation, or an aligned bilingual view, and navigation works by clicking a timestamp anywhere it appears, in the transcript, the overview or your notes. That alignment is what makes the bilingual mode more than a side-by-side dump: a click in one language takes you to the same moment in the other.
The comprehension layer is an AI overview with chapters and key quotes, plus on-demand explanation of a passage you select. Notes are timestamped, and the release notes describe automatic note polishing, so saved notes are expected to read as study material rather than as raw excerpts.
The workflow the README describes starts from a standard YouTube watch page with captions, opens the side panel from the extension icon, reads the timestamped transcript or switches reading mode, opens Overview when you want chapters and quotes, and selects transcript text when you want an explanation. Captions are the hard dependency here. Every feature in the extension sits downstream of a transcript existing, and a video without them gives the extension nothing to work with.
What sits in the repository besides the extension itself
The repository tree shows more than a content script. Alongside `manifest.json`, `background.js`, `content.js` and `settings.js` there is a `sidepanel.html` and `sidepanel.css`, an `options.html` and `options.js` for the Options page, and an `icons/` directory.
More interesting are the directories that indicate how the project is worked on. There is a `prompts/` directory, which is consistent with the README's mention of a customization prompt that Settings can hand to a coding agent. There is a `tests/` directory and a `scripts/` directory, and `package.json` wires three commands to them:
"scripts": {
"test": "node --test tests/*.test.js",
"check": "bash scripts/check-release.sh",
"package": "bash scripts/package-extension.sh"
}A release check script and a packaging script tell you the author ships a verified, zipped artifact rather than pointing people at master. The package is marked private, so `npm publish` is not part of the flow. The tests use the Node built-in test runner rather than a framework, which keeps the dependency surface of the build tooling at zero.
Two policy files are present at the top level, `PRIVACY.md` and `SECURITY.md`, and the project is MIT licensed. Documentation exists in English and Simplified Chinese, with `README.zh-CN.md` alongside the main page.
Where this fits against a hosted summariser
The obvious comparison is a hosted transcript or summary service, and the difference is architectural rather than a matter of features. A hosted tool gives you a URL and takes your data to somebody's server. This extension keeps transcript retrieval and model calls inside your browser session, keyed to accounts you own, and stores keys in Chrome's local extension storage.
The cost of that choice is real and worth naming plainly. There is no Chrome Web Store listing, so there is no automatic update channel and no store review. There is no bundled credit, so you hold Supadata and DeepSeek accounts and pay them directly. And there is no provider switch in the interface, so a model you dislike is a source edit away rather than a dropdown away.
There is also a security consideration the README takes seriously enough to repeat several times: because this is unpacked local code that you update by replacing files, the person who runs it is responsible for where those files come from. That is manageable, but it is a different trust model from installing a store extension and forgetting about it.
Editorial conclusion
This extension is a good fit for one specific habit: watching a lecture or talk with captions and wanting the transcript, a translation and a summary in the same panel without leaving the page. The fixed DeepSeek V4 Flash configuration means you get predictable latency and one credential, and you give up the ability to switch providers from the Settings UI. Two things to check before committing: whether you are comfortable pasting API keys into an unpacked extension that you update by hand, and whether your videos have captions, since the whole feature set depends on them. Because it is not on the Chrome Web Store and does not auto-update, treat each release ZIP as a deliberate action. Install once into a permanent folder with Load unpacked, and after that the only maintenance is clicking Reload when you want a new version.
Frequently asked questions
How do I install youtube-digest in Chrome?
Download the ZIP from the repository, unzip it into a permanent folder, then open `chrome://extensions`, turn on Developer mode, click Load unpacked and select the folder containing `manifest.json`. Unpacked extensions do not update automatically, so later versions need the files replaced and Reload clicked on the extension card.
Which API keys does youtube-digest need?
Two. A Supadata API key retrieves YouTube transcripts and a DeepSeek API key handles overviews, explanations, translation and note polishing. Both are entered in the extension's Settings page and stored in Chrome's local extension storage on your own device.
Can youtube-digest use a different AI model or provider?
Not from the Settings interface. The published build fixes the endpoint at `https://api.deepseek.com` with the model `deepseek-v4-flash`, sending requests in non-thinking mode. Switching requires copying the customization prompt from Settings and having a coding agent modify your local copy.
Is youtube-digest available on the Chrome Web Store?
No. It is distributed as source from GitHub and installed unpacked, which is why the README insists the folder be permanent. It also includes no API credits and runs no developer-operated server.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/zarazhangrui-youtube-digest)