wideholy 0.1.0

Rust SDK for WideHoly -- cross-religion scripture search, verse comparison, religious calendar, and commentary via the wideholy.com API.
Documentation

wideholy

crates.io docs.rs License: MIT

Async Rust SDK for the WideHoly cross-religion scripture hub API. Verse of the day, random verse, cross-religion comparison (Bible vs Quran vs Torah vs Gita vs Sutra), search suggestions, topic-based verse discovery, religious calendar events, and commentary access -- all from a single unified API.

Built on wideholy.com -- a multi-religion scripture platform connecting five world religions through shared themes like love, creation, prayer, mercy, and wisdom, enabling interfaith study and comparative theology for scholars and developers.

Install

[dependencies]
wideholy = "0.1"
tokio = { version = "1", features = ["full"] }

Or via the command line:

cargo add wideholy tokio --features tokio/full

Quick Start

use wideholy::Client;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = Client::new();

    // Get today's verse of the day from the Bible
    let votd = client.verse_of_the_day("bible", None).await?;
    println!("{}: {}", votd.reference.unwrap_or_default(), votd.text.unwrap_or_default());

    // Get a random verse from any religion
    let random = client.random_verse(None).await?;
    println!("[{}] {}", random.religion.unwrap_or_default(), random.text.unwrap_or_default());

    // Compare Genesis 1:1 with Quran Al-Fatihah 1
    let cmp = client.compare("bible:genesis.1.1", "quran:al-fatihah.1").await?;
    println!("Comparison: {:?}", cmp.data);

    Ok(())
}

What You Can Do

Verse of the Day

Get a curated daily verse from any of the five supported religions. The verse is deterministic per religion per date, suitable for daily devotional apps or widgets.

// Bible verse of the day
let votd = client.verse_of_the_day("bible", None).await?;

// Quran verse for a specific date
let votd = client.verse_of_the_day("quran", Some("2026-03-24")).await?;

// Torah, Gita, or Sutra
let votd = client.verse_of_the_day("torah", None).await?;

Cross-Religion Comparison

Compare verses side-by-side across religions. Use the religion:reference format to specify verses from different traditions, enabling interfaith dialogue and comparative study.

// Compare Bible and Quran on creation
let cmp = client.compare("bible:genesis.1.1", "quran:al-fatihah.1").await?;

// Compare Torah and Gita
let cmp = client.compare("torah:genesis.1.1", "gita:2.47").await?;

Topic-Based Discovery

Explore how different religions address universal spiritual themes -- love, creation, prayer, mercy, forgiveness, wisdom, suffering, death, and more. Each topic returns relevant verses from all five religions.

// Get verses about love across all religions
let love = client.topic_verses("love").await?;

// Cross-religion comparison for creation
let creation = client.cross_religion("creation").await?;

Search and Calendar

Autocomplete suggestions help users discover content across religions. The religious calendar aggregates holidays and observances from all traditions into a unified timeline.

// Search suggestions
let suggestions = client.search_suggest("mercy", None).await?;

// Religious calendar for March 2026
let events = client.calendar(None, Some(2026), Some(3)).await?;

// Filter by religion
let events = client.calendar(Some("bible"), Some(2026), None).await?;

Commentary

Access scholarly commentary for verses across traditions -- tafsir for Quran, Rashi for Torah, and acharya commentaries for Gita.

// Get tafsir for a Quran ayah
let comm = client.commentary("quran:al-fatihah.1").await?;

// Get Rashi commentary for a Torah verse
let comm = client.commentary("torah:genesis.1.1").await?;

API Methods

Method Description
verse_of_the_day(religion, date) Daily curated verse
random_verse(religion) Random verse from any/specific religion
compare(ref_a, ref_b) Side-by-side verse comparison
search_suggest(query, religion) Autocomplete suggestions
topic_verses(topic) Verses for a topic across religions
cross_religion(topic) Cross-religion topic comparison
calendar(religion, year, month) Religious calendar events
commentary(verse_ref) Scholarly commentary for a verse

All methods are async and return Result<T, WideHolyError>.

Supported Religions

Key Religion Site
bible Christianity widebible.com
quran Islam widequran.com
torah Judaism widetorah.com
gita Hinduism widegita.com
sutra Buddhism widesutra.com

Custom Base URL

let client = Client::with_base_url("http://localhost:8000/api/v1");

Error Handling

use wideholy::{Client, WideHolyError};

let client = Client::new();
match client.verse_of_the_day("bible", None).await {
    Ok(votd) => println!("{:?}", votd.text),
    Err(WideHolyError::Api { status, body }) => {
        eprintln!("API error {}: {}", status, body);
    }
    Err(WideHolyError::Http(e)) => {
        eprintln!("Network error: {}", e);
    }
}

WideHoly Scripture Platform

Site Domain Focus
WideBible widebible.com 66 books, 4 translations, cross-references, study tools
WideQuran widequran.com 114 surahs, hadith, tafsir, Quranic people
WideTorah widetorah.com Tanakh, Talmud, Mishnah, Rashi, parashot
WideGita widegita.com Bhagavad Gita, Upanishads, Yoga Sutras, deities
WideSutra widesutra.com Tipitaka, Pali Canon, Buddhist concepts
WideHoly wideholy.com Cross-religion hub, comparison, calendar

Also Available

Platform Package Install
Rust wideholy cargo add wideholy
Python wideholy pip install wideholy
TypeScript wideholy npm install wideholy

License

MIT