phrona 0.1.1

High-performance metasearch engine library for Rust and Python
Documentation

phrona

High-performance metasearch engine library for Rust. Queries 26 search engines across 5 categories (web, images, news, videos, books) in parallel, impersonates real browsers over HTTP/2, then merges, deduplicates and ranks results locally.

Quick start

use phrona::{search_sync, SearchOptions};

let resp = search_sync(SearchOptions::new("rust programming"))?;
for r in resp.web() {
    println!("{} {}", r.title, r.url);
}

Async:

use phrona::{SearchClient, SearchOptions};

let client = SearchClient::new()?;
let resp = client.search(SearchOptions::new("rust programming")).await?;

Features

  • 26 engines, 5 categories, suggestions and page extraction (AI grounding).
  • Impersonated HTTP/2 with TLS fingerprint spoofing via wreq profiles (Chrome, Firefox, Safari, Edge, Opera, OkHttp).
  • Cross-engine merging: tracking-parameter stripping, dedup, ranking, per-engine error reporting in every response.
  • Sync and async APIs, time ranges, safesearch, regions, per-engine filter strings, proxies.

Related crates

Documentation

Full docs (library reference, engines, examples) live in the main repository: https://github.com/alvaro-co/phrona/tree/main/docs

License

AGPL-3.0 — see the main repository for details.