wayfinder-core 0.1.0

Client, cache, search, and rendering for Archives of Nethys Pathfinder 2e / Starfinder 2e data
Documentation

wayfinder-core

crates.io docs.rs

The engine behind the wf CLI: a client, cache, search layer, and renderer for Archives of Nethys Pathfinder 2e and Starfinder 2e game data.

  • aon -- Elasticsearch client, query builder, document models, and the known categories with their filterable fields.
  • cache -- a SQLite-backed store with per-category TTLs.
  • search -- a unified service that merges cache and live client, with legacy/remaster handling.
  • render -- AON HTML/markdown into structured content blocks and spans; colorization is opt-in.

TLS uses rustls with the ring provider, so there is no dependency on OpenSSL or aws-lc.

use wayfinder_core::aon::{AonClient, GameSystem, SearchQuery};

# async fn run() -> anyhow::Result<()> {
let client = AonClient::new(GameSystem::Pathfinder)?;
let results = client.search(&SearchQuery::new().category("spell").name("Fireball")).await?;
for doc in &results {
    println!("{}", doc.name.as_deref().unwrap_or("?"));
}
# Ok(())
# }

License

MIT.