seia 0.1.0

Multi-engine web search library
Documentation

License: SySL-1.0 GitHub Checks Docs docs.rs

English · 简体中文 · 繁體中文 · 日本語 · 한국어 · Français · Español · Русский · العربية

Introduction

seia is a multi-engine web search library and CLI. It provides a unified interface to query diverse search backends. Engines that do not require authentication work out of the box with zero configuration.

Quick Start

CLI

# Basic search (no API key required)
seia search "rust async patterns"

# Choose a specific engine
seia search "Klein bottle" --engine wikipedia

# JSON output
seia search "climate change" --json

# Through a proxy
HTTPS_PROXY=http://localhost:7890 seia search "hello world"

Library

use seia::{SearchClient, Engine};

let client = SearchClient::new();
let results = client.search("rust async", Engine::Wikipedia).await?;

Development

just ci          # fmt-check + clippy + test
just test        # cargo test
just test-proxy  # run tests through localhost:7890 proxy (see tests/README)

Supported Search Engines

Engine Auth
DuckDuckGo None
Wikipedia None
SearXNG SEARXNG_URL
Tavily TAVILY_API_KEY
Bing BING_SEARCH_API_KEY
Brave BRAVE_SEARCH_API_KEY
秘塔 (MetaSo) METASO_API_KEY
智谱 (Zhipu) ZHIPU_API_KEY
博查 (Bocha) BOCHA_API_KEY

License

SySL-1.0 (Synthetic Source License). See LICENSE.