A privacy-focused browser extension that lets you rate videos and build playlists — across websites, without needing accounts or relying on history.
VIBRARY (short for Video Library) is a lightweight browser extension for Chromium browsers like Chrome and Brave.
It lets you keep track of videos you watch, rate them, and organize them into playlists — all without using browser history, cookies, or platform accounts.
It works on any site that supports Chrome's Media Session API or has detectable video elements.
- Create playlists across websites
- Rate videos (1-5 stars) and filter by rating
- Edit video details - Change titles and URLs after saving
- Thumbnail preview - See multiple frames from videos on hover
- Auto-cleanup - Automatically remove old history items
- Blacklist sites - Prevent specific domains from being tracked
- No sign-in required — skip account creation
- No reliance on cookies or browser history
- Works fully offline — all data stays on your device
- Export/Import - Backup and restore your library
- Clean dark popup UI
- Built with Manifest V3 for Chromium browsers
- Go to the Releases page
- Download the latest
.zip - In Chrome or Brave:
- Visit
chrome://extensions/ - Enable Developer Mode
- Click Load unpacked and select the unzipped folder
- Visit
VIBRARY uses two methods to detect videos:
- Media Session API - Captures metadata like title, artist, and thumbnail from sites that support it
- Direct video element detection - Listens for playing video elements as a fallback
- Videos are identified by their page URL
- If the title changed (e.g., you edited it), the existing entry is updated
- Automatically captures video frames while you watch
- Stores up to 10 thumbnails per video for preview on hover
- Works on sites that allow cross-origin access to video content
- Continues capturing when tab is active (pauses when minimized)
VIBRARY uses a dual storage system:
- History Storage (
historyVideos) - All watched videos - Library Storage (
libraryVideos) - Only videos added to playlists
This ensures playlist videos are never accidentally deleted during cleanup.
Each video entry contains:
{
id: "vid_timestamp_randomstring",
title: "Video Title",
url: "https://example.com/watch?v=123",
website: "Example",
favicon: "https://example.com/favicon.ico",
thumbnail: "data:image/jpeg;base64,...",
thumbnailCollection: [
{ time: 15.5, thumbnail: "data:image/jpeg;base64,..." },
// ... more frames
],
watchedAt: 1234567890,
rating: 0, // 0-5 stars
artist: "Channel Name", // if available
album: "Playlist Name" // if available
}- Set in Settings → Auto-Cleanup
- Options: Off, 1 day, 7 days, 30 days, 90 days, 365 days
- Only removes videos from history that aren't in any playlist
- Videos in playlists remain in both the playlist and library storage
- Runs hourly when enabled
- Add domains to prevent tracking (one per line)
- Supports subdomains (e.g.,
example.comblockssub.example.com) - Toggle on/off without losing your list
- Export creates a JSON backup of all data
- Import merges with existing data (won't overwrite)
- Supports migration from older VIBRARY versions
- All data stored in
chrome.storage.local - Nothing sent to external servers
- No analytics or telemetry
storage- Save your video libraryunlimitedStorage- Store thumbnails without limitsactiveTab- Detect videos on current tabscripting- Inject video detection script<all_urls>- Work on any video site
- Works in incognito with extension allowed
- Data still saved locally (not tied to incognito session)
- Persists across browser restarts
- Click video title or thumbnail to open in new tab
- Search by title or website name
- Sort by date (recent first) or rating
- Filter by star rating or unrated videos
- Use search to filter by title or website
- Sort by date, rating, or website
- Filter by star rating or unrated videos
- Some sites block thumbnail capture (CORS policy)
- Thumbnail capture may be limited on cross-origin videos
- Preview shows multiple frames captured during viewing
- Always saves the page URL, not the video file URL
- Handles YouTube, Vimeo, and most video sites with Media Session support
- Works with embedded videos that use Media Session API
- Thumbnail capture may not work on all sites due to CORS restrictions
- Background tabs pause thumbnail capture to save resources
- Some sites may show generic thumbnails if they block canvas access
manifest.json - Extension configuration
background.js - Service worker for cleanup and lifecycle
content.js - Video detection and thumbnail capture
popup.html - Extension UI
popup.css - Styling
popup.js - UI logic and data management
- Chrome 88+
- Brave
- Edge (Chromium)
- Other Chromium-based browsers
- Thumbnails compressed to JPEG at 70% quality
- Maximum 400px width for storage efficiency
- Cleanup runs in background without affecting browsing
Questions, ideas, or bug reports? Email apphazardstudios@gmail.com
- More sorting and filtering options
- Bulk operations (rate multiple, add to playlist)
- Custom thumbnail selection
- Video notes/comments
- Share playlists (export format)
VIBRARY is licensed under the GPL 3.0 License.