No description
- TypeScript 65%
- JavaScript 35%
| assets | ||
| public | ||
| scripts | ||
| src | ||
| test | ||
| .gitignore | ||
| LICENSE | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
YouTube Clean URL
Chrome and Firefox extension for copying clean YouTube links.
https://www.youtube.com/watch?v=dQw4w9WgXcQ&list=abc&index=1
-> https://youtu.be/dQw4w9WgXcQ
With timestamp:
https://www.youtube.com/watch?v=dQw4w9WgXcQ
-> https://youtu.be/dQw4w9WgXcQ?t=90
The timestamp command reads the actual player time, not just the URL query.
Shortcuts
| Browser | Clean URL | Clean URL with timestamp |
|---|---|---|
| Chrome/Chromium | Ctrl + Shift + Y |
Ctrl + Shift + U |
| Firefox | Ctrl + Alt + Y |
Ctrl + Alt + U |
The toolbar icon copies a clean URL without timestamp.
Install Locally
npm install
npm run build
Chrome/Chromium:
- Open
chrome://extensions - Enable Developer mode
- Click Load unpacked
- Select
dist/chrome
Firefox 142+:
- Open
about:debugging#/runtime/this-firefox - Click Load Temporary Add-on...
- Select
dist/firefox/manifest.json
Shortcut settings:
- Chrome/Chromium:
chrome://extensions/shortcuts - Firefox:
about:addons-> gear icon -> Manage Extension Shortcuts
Commands
| Command | Purpose |
|---|---|
npm run build |
Build Chrome and Firefox extensions into dist/ |
npm run check |
Run TypeScript, URL parser tests, and Firefox lint |
npm run package |
Create store-ready zip files in packages/ |
Package output:
packages/youtube-clean-url-chrome-v1.0.0.zippackages/youtube-clean-url-firefox-v1.0.0.zip
Supported URLs
youtube.com/watch?v=VIDEO_IDyoutube.com/shorts/VIDEO_IDyoutube.com/embed/VIDEO_IDyoutube.com/live/VIDEO_IDyoutu.be/VIDEO_IDmusic.youtube.com/watch?v=VIDEO_ID
License
MIT