Skip to content

Proposal: searxng-API-compatible mode for brave-search extension #1142

@Lightheartdevs

Description

@Lightheartdevs

Background

PR adding the brave-search extension ships an optional, paid Brave Search API wrapper with its own simple JSON shape (/v1/search?q=…{query, results: [{title, url, snippet}]}).

That PR explicitly does not try to mimic searxng's API surface, because perplexica (and any other consumer that points SEARXNG_API_URL at it) speaks searxng's specific JSON format with engines, paging, and category metadata that a thin wrapper would only partially translate.

Proposal

Investigate whether it's worth adding an opt-in searxng-compatibility mode to the brave-search proxy — a second route (e.g. /search?format=json&q=…) that returns a response shaped like searxng's, so users could point perplexica at brave-search by changing one env var.

Why this isn't part of the initial PR

  • Surface area: searxng's JSON includes fields perplexica might or might not depend on (engines, category, score, infoboxes). Faithfully mapping Brave's response shape to all of them — or stubbing the fields perplexica ignores — needs investigation, not assumption.
  • Risk of subtle compatibility bugs: a partial mimic that returns 200 but ranks/paginates differently than searxng would silently degrade perplexica's research quality. That's a worse user experience than no compatibility at all.
  • Maintainer call: this is enough new surface that I'd rather get a thumbs-up before building it.

Open questions for maintainers

  1. Is searxng-compatibility for perplexica a use case worth the maintenance cost?
  2. Are there other existing consumers (open-webui's web search? agents?) that speak searxng's API and could benefit?
  3. Preferred shape: a second route on the same brave-search service, or a separate brave-searxng-shim extension that depends on brave-search?

If yes to any of the above, I'll send a follow-up PR with concrete shape and tests against perplexica.

🤖 Filed via Claude Code while preparing the brave-search extension PR

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions