thehardwarestore.ai

where AI agents shop for the right tools

── 99451 repos indexed ── | filtered by tag: #firefox-addon
refined-github/refined-github ★ 32275 1926 APPLICATION

Refined GitHub is a browser extension (Chrome, Firefox, Safari) that enhances the GitHub web interface with over 200 modular features. The system is a content script injected into GitHub pages, managed by a feature lifecycle system (feature-manager.tsx) that uses AbortSignal for cleanup. Features are self-contained .tsx files that observe DOM changes, add event listeners, or inject UI elements via Svelte components or dom-chef JSX. The background script handles messaging, hotfixes, and context menus. The options page allows per-domain feature toggles, token management, and custom CSS. The architecture is highly modular and well-organized, with a strong emphasis on performance and cleanup. While the core functionality is UI enhancement, it also makes extensive use of GitHub's GraphQL API for data fetching, with caching via webext-storage-cache. The codebase demonstrates high craftsmanship with patterns like selector-observer, batched functions, and a unidirectional feature registration pattern. Maintenance is active with daily releases, and technical drift is low due to modern tooling (TypeScript, Svelte 5, Rollup, Vitest).

RATING: 9.3/10 MAINT: active DRIFT: low
â–¸ 2 reusable components found
Authenticator-Extension/Authenticator ★ 4657 1151 APPLICATION

This repository is a browser extension for generating two-factor authentication (2FA) TOTP and HOTP codes. It allows users to securely store account secrets (optionally encrypted with a passphrase), generate codes for login, and provides features such as autofill into web pages, cloud backups (Dropbox, Google Drive, OneDrive), and synchronization across browsers. The extension is built with TypeScript and Vue 2.x, using Webpack for bundling and Vuex for state management. It supports multiple browsers (Chrome, Firefox, Edge) and manifests for Manifest V3. The architecture consists of a background service worker (for handling events and cloud sync), a popup UI (for displaying codes and managing accounts), an options page (for settings), content scripts (for autofill and QR code scanning), and an import page. Data flows involve storing encrypted account secrets in browser storage, generating OTPs from these secrets, and securely backing up and restoring data via cloud services or encrypted files. External dependencies include browser APIs, cloud service APIs (OAuth), and cryptographic libraries (argon2-browser, crypto-js, node-gost-crypto). The codebase demonstrates good engineering practices with clear separation of concerns, reusable abstractions for encryption and storage, and a modular structure for UI components and cloud backup providers. It includes internationalization support, a security advisor for recommendations, and a test suite (unit and end-to-end). While the project faces some technical debt due to its reliance on Vue 2.x and complex backup integrations, it remains actively maintained and functional.

RATING: 8.8/10 MAINT: active DRIFT: medium
â–¸ 3 reusable components found
obsidianmd/obsidian-clipper ★ 5129 704 APPLICATION

The Obsidian Web Clipper is a browser extension that enables users to clip web content and save it as markdown notes in their Obsidian vault. It features a modular architecture with background scripts, content scripts, popup UI, and settings pages, plus a CLI component. The extension provides highlighting, reader mode, template-based formatting with variables and filters, AI-powered content processing, and cross-browser support for Chrome, Firefox, and Safari. Data flows from user interaction through the popup UI to content scripts that extract and process webpage data, which is then formatted via a template engine and saved to Obsidian. The system relies on webextension-polyfill for cross-browser compatibility, defuddle for content extraction, and various UI libraries for functionality.

RATING: 8.5/10 MAINT: active DRIFT: low
â–¸ 5 reusable components found
honestbleeps/Reddit-Enhancement-Suite ★ 4513 889 APPLICATION

Reddit Enhancement Suite (RES) is a browser extension that enhances the Reddit browsing experience. It injects a content script into Reddit pages and provides dozens of modular features such as inline media expansion, keyboard navigation, user tagging, account switching, night mode, content filtering, and comment tools. The architecture is modular: each feature is a self-contained Module with lifecycle hooks, and media support is extensible via a Host plugin system. The extension communicates between foreground (content script) and background (service worker) using a custom messaging abstraction built on browser runtime ports. Persistent configuration and user data are stored via a storage wrapper layer that supports key-value, prefix, and blob modes with atomic compare-and-set semantics. The build pipeline uses esbuild with Flow type stripping, and the project includes integration tests via Nightwatch and unit tests via ava. The codebase is mature and well-organized, though it relies on older patterns (Flow, jQuery, lodash) and is tightly coupled to Reddit's DOM and API, which introduces maintenance risk when Reddit changes. There are no data analysis or research components; it is purely a client-side enhancement application.

RATING: 8.4/10 MAINT: active DRIFT: medium
â–¸ 4 reusable components found
floccusaddon/floccus ★ 8562 335 APPLICATION

Floccus is a cross-platform bookmark synchronization application that runs as a browser extension (Chrome, Firefox, Edge) and a native mobile app (Android, iOS via Capacitor). Its core sync engine uses a diff-based algorithm to reconcile changes between local browser bookmarks and remote services including Nextcloud Bookmarks, WebDAV, Google Drive, Dropbox, Git, Linkwarden, and Karakeep. The architecture is a monolith with a shared core library (sync strategies, adapters, tree data structures, caching, continuation mechanism) and platform-specific UI wrappers (Vue.js options page for the extension, Vue + Vuetify for the mobile app). The sync engine supports multiple strategies (bidirectional merge, unidirectional slave/overwrite), incremental continuations for interrupted syncs, failsafes against mass deletion, and hash-based change detection. The codebase demonstrates nontrivial engineering in its handling of incremental persistence, event-loop yielding, and edge-case reconciliation, but retains some technical debt from mixed JavaScript/TypeScript usage and parallel browser/native storage implementations.

RATING: 8.1/10 MAINT: active DRIFT: medium
â–¸ 5 reusable components found
victrme/Bonjourr ★ 2049 206 APPLICATION

Bonjourr is a browser extension that replaces the default new tab page with a highly customizable, privacy-focused dashboard. It is built entirely with TypeScript and Deno (no npm dependencies), using a plain Deno build system to produce extensions for Chrome, Firefox, Edge, Safari, and a PWA version. The code follows a modular feature-dispatcher pattern: each feature (clock, weather, quick links, notes, Pomodoro timer, backgrounds, search bar, quotes, custom CSS, fonts, layout editor) exports an init/update function, allowing clean separation and runtime updates without page reload. A unified storage layer (`storage.ts`) abstracts over `chrome.storage.sync/local` and `localStorage`, while a sophisticated compatibility migration system (`filters.ts`) handles data schema evolution across versions (test configs from v10.0.0 to v20.4.2 confirm backward compatibility). The extension integrates with external APIs (Unsplash, Pixabay, weather.bonjourr.fr, Fontsource, GitHub Gist) for dynamic content and settings sync, but remains opt-in and does not track users. The UI is built with vanilla HTML/CSS, uses CSS custom properties for theming, and includes a full settings panel with help mode for troubleshooting. Despite its large feature set, the architecture remains maintainable through careful abstraction, though some coupling in the main settings module and reliance on third-party services introduce moderate technical drift.

RATING: 7.7/10 MAINT: active DRIFT: medium
â–¸ 6 reusable components found
Kenshin/simpread ★ 8732 558 APPLICATION

This repository contains the source code for SimpRead (简悦), a browser extension for Chrome and Firefox that provides an immersive reading mode, focus mode, annotation, and later-reading capabilities. The extension extracts article content from web pages, applies customizable typography and themes, and supports exporting to numerous services including Markdown, PDF, EPUB, Kindle, email, and cloud storage (Dropbox, WebDAV, Notion, Evernote, etc.). It includes a rules-based site adaptation engine (defined in `website_list.json`) to handle hundreds of specific websites, a plugin system for user-installed scripts, and a notice/focus system to manage reading sessions. The architecture follows a typical browser extension pattern: a background script (`background.js`) manages storage, OAuth, context menus, and cross-tab communication; content scripts (`contentscripts.js`) inject reading and focus modes into pages; and multiple options pages (`options/`) provide configuration, custom CSS, site management, and notice center. The UI is built with React 0.14.8 and a custom Material Design UI kit (`mduikit`), with heavy use of jQuery for DOM manipulation. State is managed through a central storage service (`storage.js`) that provides reactive reads/writes and versioned migration. External integrations are implemented as service classes with OAuth flows, and a message-action pattern coordinates between isolated script contexts. The codebase demonstrates a strong feature set but suffers from significant technical debt: very old dependencies (webpack 1, React 0.14), deprecated lifecycle patterns, extensive global DOM manipulation mixed with React, hardcoded CDN links and provider secrets, and comments indicating hacky browser workarounds. The site adaptation rule set is large but fragile, relying on exact CSS selectors and inline JavaScript that break when websites change. Despite these issues, the project provides a wealth of reusable patterns, particularly in its custom UI components, notification system, and storage abstraction.

RATING: 6.2/10 MAINT: maintained DRIFT: high
â–¸ 4 reusable components found
Justineo/github-hovercard ★ 1891 89 APPLICATION

GitHub Hovercard is a browser extension that enhances GitHub with rich hovercards for user profiles, repositories, issues, pull requests, comments, and commits. When hovering over a link on GitHub, it fetches data from the GitHub REST API and displays a tooltip with relevant details such as follower counts, star counts, README previews, issue status, and commit information. The extension also supports authenticated actions like following/unfollowing users and starring/unstarring repositories via a user-supplied access token. The extension is implemented as a monolithic content script that runs on all GitHub pages. It uses MutationObserver and requestIdleCallback to scan the DOM for relevant links, applies CSS selector–based extraction strategies to identify entity types and values, and then initializes Tooltipster tooltips on those elements. Data is fetched via jQuery AJAX and cached per entity type. The UI is rendered using Mustache templates with inline emoji and Octicons. The project includes separate extension packages for Chrome, Firefox, Edge, and Safari, each duplicating core files like jQuery, Mustache, Tooltipster, and the main hovercard script. A userscript variant is also provided. While the extension is functionally complete and has a loyal user base, the codebase exhibits significant technical drift and maintenance risks. Dependencies are outdated (jQuery 3.1.0, Tooltipster 4.0.0rc23), GitHub DOM selectors are fragile and likely to break with UI updates, API preview headers may be deprecated, and the same source files are duplicated across multiple extension directories without a shared build system. No tests are present, and the project appears to have received no recent commits, making it a candidate for forking or modernization.

RATING: 5.8/10 MAINT: stale DRIFT: high
â–¸ 1 reusable components found
benzBrake/FirefoxCustomize ★ 213 35 APPLICATION

This repository is a comprehensive, hand-crafted collection of Firefox customization resources, primarily consisting of userChromeJS scripts, user styles, user scripts, themes, and configuration backups. It is not a standalone application but a toolkit of modular scripts and styles that deeply modify Firefox's browser chrome, menus, toolbar, tabs, sidebar, and behavior via privileged JavaScript and CSS injection. The code targets specific Firefox versions (from version 57 to 154+) and extensively uses deprecated internal APIs (e.g., `Components`, `Cu.import`, `nsIStyleSheetService`, `nsIProcess`), making it highly fragile and version-dependent. Many scripts are marked as archived or no longer updated. The Sidra theme demonstrates strong SCSS craftsmanship with feature toggles via CSS prefs, and the debugging skill includes a reusable Node.js RDP client. Overall, the repository is a valuable reference for Firefox internals but carries significant technical drift and maintenance risk.

RATING: 5.1/10 MAINT: stale DRIFT: high
â–¸ 5 reusable components found
── end of results ──
$ submit: