Skip to content

Purgator/OneSearch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

12 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

OneSearch β€” Advanced Find in Page

A Chrome extension that replaces the default Ctrl+F with the find bar you always wanted β€” the soul of classic Firefox search, with modern superpowers layered on top.

Manifest V3 No page mutation

Why

Chrome's find bar hasn't changed in 15 years. Firefox in the good old days had Highlight All, type-ahead find with /, links-only quick find with ', the pink "phrase not found" flash, and F3 find-again. OneSearch brings all of that back β€” and goes further.

Features

Search engine

  • Search as you type β€” instant, debounced, zero flicker
  • Match case, whole words, regular expressions β€” toggle from the bar (Alt+C/W/R)
  • Diacritics-insensitive β€” resume finds rΓ©sumΓ©, uber finds ΓΌber (Alt+D)
  • Highlight All β€” the legendary Firefox toggle (Alt+A)
  • Built on the CSS Custom Highlight API: the page's DOM is never modified, so nothing ever breaks β€” no mangled React apps, no broken listeners
  • Live re-search when the page mutates (SPAs, infinite scroll)
  • Match cap for gigantic pages (configurable)

Finding your way

  • Rainbow highlights β€” matches cycle through 5 configurable colors so adjacent results never blur together
  • Spotlight rings 🎯 β€” when you jump to a result, concentric rings sweep in from the edges of the screen and converge on the match. You physically cannot lose it. Fully tunable: speed, ring count, thickness, launch stagger, custom color β€” with a live preview in the options page.
  • Scrollbar minimap β€” colored ticks along the right edge show where every match lives in the document; click a tick to jump straight there
  • 3 / 127 live counter + match count on the toolbar badge
  • "Reached end β€” wrapped to top β†Ί" notice, like the old days
  • Pink not-found input, amber invalid-regex input

Old-school quick find

  • Press / anywhere β†’ quick find (auto-dismisses after 5 s of inactivity, Firefox-2004 style)
  • Press ' β†’ quick find links only; Enter follows the link, Ctrl+Enter opens it in a new background tab (bar stays open so you can keep harvesting links), Ctrl+Shift+Enter switches to the new tab
  • Search when you start typing (off by default) β€” the classic Firefox accessibility option: any printable key outside a form field starts a quick find instantly
  • F3 / Shift+F3 / Ctrl+G β€” find again, even with the bar closed

Ergonomics

  • Opens with Ctrl+F (overrides the native bar) or Ctrl+Shift+F or the toolbar icon
  • Draggable, glassmorphic bar that stays out of your way
  • Remembers your last search, pre-selected on reopen
  • Everything configurable in a polished options page; settings sync across your Chrome profiles

How to install (no technical skills needed)

OneSearch isn't on the extension stores (yet), but installing it by hand takes about two minutes.

Chrome / Edge / Brave

  1. Download it β€” go to the latest release and click the OneSearch-v*.zip file under Assets.
  2. Unzip it β€” find the downloaded file (usually in your Downloads folder), right-click it and choose Extract All… (Windows) or double-click it (Mac). You now have a folder called OneSearch.

    ⚠️ Move that folder somewhere permanent (like your Documents) β€” Chrome loads the extension from this folder, so don't delete it afterwards.

  3. Open Chrome's extensions page β€” type chrome://extensions in the address bar and press Enter.
  4. Turn on Developer mode β€” it's a small switch in the top-right corner of that page.
  5. Load the extension β€” click the Load unpacked button (top-left), and select the OneSearch folder you extracted (the one containing manifest.json).
  6. Done! Open any web page and press Ctrl+F. Enjoy the rainbow. 🌈

To change colors and options later: right-click the OneSearch icon in the toolbar β†’ Options (or click the βš™ in the search bar itself).

Chrome may show "unpacked extension" warnings β€” that's normal for extensions installed outside the Web Store. Requires Chrome 105 or newer (any Chrome from late 2022 onwards).

Firefox

Requires Firefox 132 or newer. Download and unzip the release as above, then:

  1. Type about:debugging#/runtime/this-firefox in the address bar
  2. Click Load Temporary Add-on… and select the manifest.json file inside the OneSearch folder
  3. Grant site access β€” this is the step everyone misses: Firefox doesn't let extensions read pages until you say so. Click the OneSearch icon in the toolbar and press "Grant access to all websites" in the orange banner. (Alternative: about:addons β†’ OneSearch β†’ Permissions tab β†’ enable Access your data for all websites.)
  4. Reload your open tabs once, then press Ctrl+F on any page

⚠️ Temporary add-ons are removed when Firefox restarts β€” you'll need to load it again. A permanent install requires the extension to be signed by Mozilla (AMO); that's on the roadmap.

Developer install

Clone the repo and load the folder directly: chrome://extensions β†’ Developer mode β†’ Load unpacked (Chrome), or about:debugging β†’ Load Temporary Add-on (Firefox).

Keyboard reference

These are the defaults β€” every shortcut below is rebindable in Options β†’ Keyboard shortcuts (each action supports two bindings). Enter/Shift+Enter navigation is fixed, and Esc always closes.

Keys Action
Ctrl+F Open OneSearch (replaces native find)
Enter / Shift+Enter Next / previous match
F3 / Shift+F3 / Ctrl+G Find again (works with bar closed)
/ Quick find (auto-dismiss)
' Quick find in links only β€” Enter opens the link
Ctrl+Enter Open the matched link in a new background tab (+Shift to switch to it)
Alt+C Alt+W Alt+R Alt+D Alt+A Case / Word / Regex / Diacritics / Highlight-all
Esc Close

Project layout

manifest.json        Cross-browser MV3 manifest (Chrome service worker + Firefox event page)
src/content.js       Find bar UI, search engine, highlights, spotlight, minimap
src/background.js    Command relay + toolbar badge
src/popup.html/js    Toolbar popup β€” quick actions + Firefox permission banner
src/options.html/js  Options page
icons/               Generated icons
tools/make-icons.ps1 Icon generator (PowerShell / System.Drawing)

Notes

  • Content scripts can't run on browser pages (chrome://, about:), extension stores, or the built-in PDF viewer β€” the native find bar still works there.
  • Works on Chrome 105+ and Firefox 132+ (both need the CSS Custom Highlight API). On Firefox, remember to grant site access via the toolbar popup β€” Firefox treats host permissions as optional and won't inject the extension until you do.
  • Plays nice with keyboard-driven extensions (Vimium, Surfingkeys…): the find bar uses an open shadow root so they can detect that you're typing in an input and switch to insert mode instead of firing shortcuts. Keys typed in the bar are also stopped from reaching page-level hotkey handlers.

License

OneSearch is free software, released under the GNU General Public License v3.0 (or any later version). You are free to use, study, modify and share it β€” derivative works must remain free under the same terms.

  • Highlights are pure paint (Custom Highlight API): copy/paste, selection and page scripts are completely unaffected.

About

πŸ” A supercharged Ctrl+F for Chrome β€” rainbow highlights, spotlight rings that converge on the active match, scrollbar minimap, and old-school Firefox quick find. Every shortcut configurable. GPL-3.0.

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors