The official companion browser extension for Tuvix RSS - a modern, self-hostable RSS aggregator that puts you back in control of your content consumption.
Tuvix Tricorder makes RSS feed discovery effortless. While browsing any website, click the extension icon to instantly discover and access RSS/Atom feeds. Built with the @tuvixrss/tricorder library, it seamlessly integrates with the Tuvix RSS ecosystem.
Tuvix RSS is a modern RSS aggregator designed for data ownership and portability. Unlike traditional feed readers that lock you in, Tuvix emphasizes:
- Self-Hosting: Deploy on your own infrastructure with Docker Compose or Cloudflare Workers
- Data Portability: Full OPML export to migrate to any RSS reader
- Modern Stack: TypeScript, tRPC, and PWA-capable
- User Control: Escape algorithmic feeds and curate your own content sources
This browser extension extends Tuvix's mission by making feed discovery and subscription a one-click experience.
- Automatic Feed Discovery: Detects RSS, Atom, RDF, and JSON feeds on any webpage
- Visual Status Icons: Three states (disabled, searching, discovered)
- Cross-Browser Support: Works on Chrome, Firefox, Edge, and Safari
- Zero Configuration: Just click and discover
- Smart Detection: Handles special cases like Apple Podcasts and common feed locations
- One-Click Access: Click any discovered feed to open it in a new tab
- Node.js 18+
- pnpm
pnpm installThe extension supports hot reload for rapid development:
# Firefox with auto-reload (recommended)
pnpm dev
# Chrome with auto-reload
pnpm dev:chromeThis will:
- Build the extension in watch mode
- Launch the browser with the extension loaded
- Automatically reload the extension when you make changes
Note: The first time you run the dev command, web-ext will launch a browser instance. Any changes to .ts or .html files will automatically trigger a rebuild and reload.
# Build for Chrome/Edge (uses service worker)
pnpm build
# Build for Firefox (uses Firefox-specific manifest)
pnpm build:firefox- Go to
chrome://extensions/(oredge://extensions/) - Enable "Developer mode"
- Click "Load unpacked"
- Select the
distfolder
- Go to
about:debugging#/runtime/this-firefox - Click "Load Temporary Add-on"
- Navigate to
dist/folder - Select
manifest.json
Safari requires additional steps and Apple Developer account. See Safari Extension Documentation.
- Navigate to any website
- Click the Tuvix Tricorder extension icon
- Click "Discover Feeds" button
- View discovered feeds and click to open in new tab
- Disabled (gray): Default state, ready to scan
- Enabled (yellow, animated): Actively searching for feeds
- Discovered (green): Feeds found successfully
This extension follows MDN's best practices for cross-browser extensions:
- Uses
webextension-polyfillfor API compatibility - Separate manifests for Chrome (service worker) and Firefox (background scripts)
- Promises-based API for all async operations
- Minimum browser versions:
- Chrome/Edge: 109+
- Firefox: 109+
├── src/
│ ├── background.ts # Service worker for feed discovery
│ └── popup.ts # Popup UI logic
├── icons/
│ ├── tuvix-disabled.svg
│ ├── tuvix-enabled.svg
│ └── tuvix-discovered.svg
├── manifest.json # Chrome/Edge manifest
├── manifest.firefox.json # Firefox manifest
├── popup.html # Popup interface
└── build.js # Build script
- TypeScript
- webextension-polyfill
- @tuvixrss/tricorder
- esbuild
Contributions are welcome! This extension is part of the Tuvix RSS ecosystem. Please check out the main Tuvix RSS repository for contribution guidelines.
- Tuvix RSS - The main RSS aggregator application
- @tuvixrss/tricorder - The feed discovery library powering this extension
MIT
