Observed since 20 Oct, 20:00 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Advanced Bible Search Library with fuzzy and semantic search capabilities
A comprehensive Bible text search library that combines multiple advanced search techniques to provide powerful, flexible searching of biblical texts.
# Install directly from GitHub
pip install adv-bible-search
# Or install directly from GitHub
pip install git+https://github.com/siroosab/bible-search.git
# Or clone and install locally
git clone https://github.com/siroosab/bible-search.git
cd bible-search
pip install -e .
pip install -r requirements.txt
The library expects Bible data in JSON format with the following structure:
{
"books": [
{
"name": "Genesis",
"chapters": [
{
"chapter": 1,
"name": "Genesis 1",
"verses": [
{
"verse": 1,
"chapter": 1,
"name": "Genesis 1:1",
"text": "In the beginning God created the heaven and the earth."
},
// More verses...
]
},
// More chapters...
]
},
// More books...
]
}
The library includes a command-line interface for searching:
# Basic search (uses all search methods)
python search_cli.py "creation"
# Specify search type
python search_cli.py --type fuzzy "creation"
python search_cli.py --type semantic "love your neighbor"
python search_cli.py --type topic "forgiveness"
# Limit number of results
python search_cli.py --limit 10 "light"
# Show relevance scores
python search_cli.py --scores "faith"
# Output in JSON format
python search_cli.py --json "hope"
from bible_search import BibleSearcher, SearchType
# Initialize the searcher
searcher = BibleSearcher(data_dir="bible_data", db_path="bible_search.db")
searcher.initialize()
# Basic search (uses all search methods)
results = searcher.search("creation")
# Specify search type
results = searcher.search("creation", search_type=SearchType.FUZZY)
results = searcher.search("love your neighbor", search_type=SearchType.SEMANTIC)
results = searcher.search("forgiveness", search_type=SearchType.TOPIC)
# Control other parameters
results = searcher.search(
query="light",
search_type=SearchType.ALL,
limit=10,
categorize=True,
include_scores=True
)
# Available search types:
# - SearchType.EXACT: Exact text matching using SQLite FTS5
# - SearchType.FUZZY: Approximate string matching using RapidFuzz
# - SearchType.SEMANTIC: Meaning-based search using sentence-transformers
# - SearchType.TOPIC: Theme/concept search (specialized semantic search)
# - SearchType.ALL: Combine all search methods (default)
bible_search.py: Main interface for the search librarydatabase.py: SQLite database operations with FTS5fuzzy_search.py: Fuzzy text matching with RapidFuzzsemantic_search.py: Semantic similarity search with sentence-transformerssearch_cli.py: Command-line interfaceWhen first running the library, it will:
The semantic embeddings are saved to disk for faster subsequent runs.
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 0.1.1 | 31 Jul 2025 | 9 |
This describes our collected data; it is not a security assessment.
Observed since 20 Oct, 20:00 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:e071dc0b42974b749a1907db31bcf4084d8af31c1d5fe1274cf0dcb53fc024d7