awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
johnste avatar

johnste/finicky

0
View on GitHub↗
4,605 stars·185 forks·Go·mit·11 views

Finicky

Finicky is a URL routing tool that intercepts link-open requests and directs each URL to a designated browser before navigation occurs. It operates as a stateless proxy that evaluates user-defined patterns, context, and scriptable logic to dispatch links to the correct browser or profile, keeping work, personal, and other browsing activities separate.

The tool distinguishes itself through scriptable routing logic, allowing users to write JavaScript or TypeScript functions that inspect URL details, the source application, and other context to determine the routing decision. It also supports context-aware rule matching, where both the destination URL and the application that triggered the link influence the browser choice. Additionally, Finicky includes a URL pattern rewriting engine that can modify or strip query parameters before the browser opens the link—useful for enforcing HTTPS or removing tracking parameters.

Beyond scriptable and context-based routing, Finicky offers pattern-based routing with multi-condition rules, browser launch configuration including profile selection and command-line arguments, and external integration via a browser extension for context menus and keyboard shortcuts. It can also fall back to a third-party browser picker when no automated rule applies. The tool is configured with a JavaScript or TypeScript configuration file, and it launches browsers using shell commands, supporting any installed browser application.

Features

  • URL-Based Browser Selection - Intercepts URL requests and routes them to specific browser applications based on configurable rules.
  • Context-Sensitive Link Routers - Opens links in different browsers based on the destination URL and the app that triggered the link.
  • URL Routing Proxies - Rewrites and redirects URLs to designated browsers or profiles using pattern matching.
  • Browser Routing Rules - Provides configurable URL pattern rules to route links to designated browsers, separating work and personal browsing.
  • Scriptable Browser Routing - Allows defining routing logic through custom JavaScript or TypeScript scripts that evaluate URL patterns for browser selection.
  • Source-Triggered URL Matchers - Allows routing based on the source application that triggered a link, not just the destination URL.
  • URL Routing Scripts - Provides JavaScript and TypeScript functions that inspect URL details to decide the target browser.
  • Browser URL Dispatchers - Routes URLs to designated browsers based on user-defined domain patterns before navigation occurs.
  • Browser Launch Commands - Launches browsers by executing shell commands with the URL passed as an argument.
  • Tracking Parameter Removers - Strips tracking query parameters and rewrites URLs to enforce HTTPS before opening them.
  • Stateless Architectures - Operates as a lightweight stateless HTTP request router without maintaining session state.
  • Browser Launchers - A configurable dispatcher that launches different browsers depending on URL patterns and context.
  • Routed Browser Launcher Configurations - Configures browser launch settings including profile selection and command-line arguments for routing.
  • URL Rewrite Rules - Modifies URL paths before opening them to enforce security or remove tracking parameters.
  • Client-Side URL Rewriters - Modifies URL paths and query parameters using match-and-replace rules before the browser opens the link.
  • Client-Side URL Rewriting - Rewrites URL paths before page load to enforce HTTPS or remove tracking parameters using configurable match rules.
  • Multi-Browser Coordination - Organizes multiple browser instances and automatically assigns each link to the correct one.
  • Developer Utilities - Routes links to specific browsers based on custom rules.
  • Web Browsers - Route links to specific browsers based on custom rules.
  • System Utilities - Define rules for opening links in specific browsers.

Star history

Star history chart for johnste/finickyStar history chart for johnste/finicky

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does johnste/finicky do?

Finicky is a URL routing tool that intercepts link-open requests and directs each URL to a designated browser before navigation occurs. It operates as a stateless proxy that evaluates user-defined patterns, context, and scriptable logic to dispatch links to the correct browser or profile, keeping work, personal, and other browsing activities separate.

What are the main features of johnste/finicky?

The main features of johnste/finicky are: URL-Based Browser Selection, Context-Sensitive Link Routers, URL Routing Proxies, Browser Routing Rules, Scriptable Browser Routing, Source-Triggered URL Matchers, URL Routing Scripts, Browser URL Dispatchers.

What are some open-source alternatives to johnste/finicky?

Open-source alternatives to johnste/finicky include: jadengeller/helium — A floating browser window for OS X. efforg/privacybadger — Privacy Badger is a browser privacy extension designed to block third-party trackers and strip monitoring parameters… everywall/ladder — Ladder is a web proxy server and HTTP response modifier designed to circumvent bot protections, CORS restrictions, and… brianmichel/juice — Make your battery information a bit more interesting. avibrazil/rdm — RDM is a system utility for macOS designed to unlock and apply unsupported screen resolutions. It functions as a… abhishaker17/clocker — ⏲ macOS app to plan and organize through timezones.

Open-source alternatives to Finicky

Similar open-source projects, ranked by how many features they share with Finicky.
  • jadengeller/heliumJadenGeller avatar

    JadenGeller/Helium

    3,599View on GitHub↗

    A floating browser window for OS X

    Swift
    View on GitHub↗3,599
  • efforg/privacybadgerEFForg avatar

    EFForg/privacybadger

    3,668View on GitHub↗

    Privacy Badger is a browser privacy extension designed to block third-party trackers and strip monitoring parameters from URLs to protect user anonymity. It functions as a heuristic tracker blocker, identifying tracking domains by analyzing their appearance across multiple websites. The extension includes a link tracking sanitizer that uses regular expression matching to remove identifiers from outgoing links before navigation occurs. It also acts as a third-party content controller, replacing embedded trackers and social widgets with placeholders that only activate upon manual user interacti

    JavaScriptbrowser-fingerprintingchrome-extensioncookies
    View on GitHub↗3,668
  • everywall/laddereverywall avatar

    everywall/ladder

    8,499View on GitHub↗

    Ladder is a web proxy server and HTTP response modifier designed to circumvent bot protections, CORS restrictions, and paywalls. It functions by intercepting traffic to modify HTML, CSS, and JavaScript via regular expressions and altering HTTP headers to reveal restricted content. The project distinguishes itself through its ability to bypass anti-scraping mechanisms and specialized bot detection, such as Cloudflare, by integrating with external challenge-solving services. It also enables client identity emulation by spoofing user agents and network identifiers to masquerade as different brow

    Gobypasscorscors-proxy
    View on GitHub↗8,499
  • brianmichel/juicebrianmichel avatar

    brianmichel/Juice

    767View on GitHub↗

    Make your battery information a bit more interesting.

    Swift
    View on GitHub↗767
  • See all 30 alternatives to Finicky→