Expand description
bible — a TUI Bible reader with on-demand translation downloads.
- Canonical reference handling is delegated to the
biblerefcrate. - Translation files are fetched on demand from the Beblia Holy-Bible-XML-Format repo and stored under the user’s data directory.
- The binary
bibleprovides aratatui+crosstermTUI by default and headless CLI subcommands when stdout is not a TTY.
§Quick example
use bible::{Bible, reference};
let bible = Bible::load("EnglishKJBible")?;
let parsed = reference::parse("John 3:16")?;Re-exports§
pub use crate::bible::Bible;pub use crate::bible::Book;pub use crate::bible::Chapter;pub use crate::bible::TranslationInfo;pub use crate::bible::Verse;pub use crate::error::Error;pub use crate::error::Result;pub use crate::search::SearchHit;
Modules§
- bible
- bookmarks
- Persistent bookmarks. TOML at
<config_dir>/bookmarks.toml. - cli
- Command-line dispatch.
- download
- error
- manifest
- Catalog of available translations.
- parser
- Beblia XML →
Bible. - plan
- Bible reading plans. v1 ships a single deterministic plan, “Bible in a Year” — every chapter of the Protestant canon (1189 of them) split across 365 or 366 days in canonical order. Only progress is persisted; the day → references mapping is regenerated on every launch.
- reference
- Re-exports of
biblerefreference types and small helpers. - search
- settings
- User-configurable settings — typography, theme, reader width, parallel
divider. TOML at
<config_dir>/settings.toml. Schema-versioned; on mismatch the file is ignored and defaults are used (file is left intact). - state
- Persistent UI state — last reading position and parallel-view config.
- storage
- tui
- Terminal UI: Reader + Translation Manager.
Structs§
- Bible
Chapter Reference - This struct represents a Bible reference which is valid (can be found in a real Bible), consisting of a book and a chapter.
- Bible
Verse Reference - This struct contains a Bible reference which is valid (can be found in a real Bible), consisting of a book, a chapter and a verse.
Enums§
- Bible
Book - The struct BibleBook contains all books of the Bible in their correct order. As it derives from
PartialOrdandPartialEq, you can make comparisons like<or>to determine whether a book is before or after an other. - Bible
Reference - This enum represents any single Bible reference (one book, one chapter or one verse)
- Bible
Reference Representation - This enum represents all possible representations of one or multiple Bible references. It can be a reference to a book, a chapter or a verse. It can also be a range of books, chapters or verses or to a list of books, chapters or verses.
Functions§
- set_
quiet - Silence library-side
eprintln!warnings (used by the TUI so that stderr writes don’t corrupt the alternate-screen display).