FunBible
A feature-rich terminal Bible reader written in Python with version management, smart search, and a beautiful CLI.
Features
- 📖 Interactive Shell: Type
funbibleto enter a powerful interactive shell with tab completion and command history - 🔍 Smart Search: Hybrid search combining exact substring matching with fuzzy search for typo tolerance
- 📚 Version Management: Download and switch between multiple Bible versions on-demand
- 🌐 Online Lookup: Fetch verses from biblia.bg when offline copies aren't available
- 📋 Clipboard Integration: Automatically copy results to your clipboard
- 🎨 Rich Output: Beautiful colored terminal output with syntax highlighting
- ⚡ Quick Commands: Direct CLI access for one-shot lookups without entering the shell
Installation
This project uses Poetry for dependency management.
# Clone the repository
git clone https://github.com/m-krastev/funbible.git
cd funbible
# Install dependencies
poetry install
# Or install globally with pip
pip install .
Quick Start
# Start interactive shell
funbible
# Quick verse lookup
funbible get "John 3:16"
# Search for text
funbible find "love"
# Get a random verse
funbible random
# List available Bible versions
funbible version list --all
# Install a new version
funbible version install kjv
# Set default version
funbible version default kjv
Usage
Interactive Shell
funbible
Inside the shell:
funbible> John 3:16
16 For God so loved the world...
funbible> find love
ℹ Found 10 results (5 exact, 5 fuzzy)
= (John 3:16) For God so loved the world...
...
funbible> version use kjv
✓ Switched to King James Version
funbible> random
Romans 8:28
And we know that all things work together for good...
funbible> help
Shell Commands
| Command | Alias | Description |
|---|---|---|
find <text> |
f, s |
Search for verses containing text |
more |
m |
Show more results from last search |
book <name> |
b |
Display an entire book |
random |
r |
Display a random verse |
version |
v |
Manage Bible versions |
copy |
c |
Toggle clipboard copying |
config |
- | View/modify settings |
exit |
q |
Exit the shell |
Version Management
# List installed versions
funbible version list
# List all available versions (including downloadable)
funbible version list --all
# Install a version
funbible version install kjv
# Set as default
funbible version default kjv
# Remove a version
funbible version remove kjv
Available Versions
| ID | Name | Language |
|---|---|---|
biblia-1940 |
Bulgarian Bible 1940 | Bulgarian |
biblia-revizirano |
Bulgarian Bible Revised | Bulgarian |
kjv |
King James Version | English |
asv |
American Standard Version | English |
bbe |
Bible in Basic English | English |
web |
World English Bible | English |
Configuration
Settings are stored in ~/.config/funbible/config.json:
# View all settings
funbible config
# Set a value
funbible config auto_copy true
funbible config search_limit 20
funbible config fuzzy_threshold 60
CLI Options
funbible --help
funbible get --help
funbible version --help
License
MIT License - see LICENSE file for details.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
funbible-0.1.3.tar.gz
(18.8 MB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file funbible-0.1.3.tar.gz.
File metadata
- Download URL: funbible-0.1.3.tar.gz
- Upload date:
- Size: 18.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.9.25
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e828b058923e7325b5f34ed6ae8c0d66194a185ff8ef183de710175af7d81aa4
|
|
| MD5 |
5f7e341d95d71b681d532cbb0f062f99
|
|
| BLAKE2b-256 |
505a20ab982cb40fa81a86ab44264f1b9c75fe7f19090ec5293fac7bb77ee244
|
File details
Details for the file funbible-0.1.3-py3-none-any.whl.
File metadata
- Download URL: funbible-0.1.3-py3-none-any.whl
- Upload date:
- Size: 8.1 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/6.2.0 CPython/3.9.25
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8397a9f17472a8a11672b86b21111b2f73814ed6396942958585b18637118bc0
|
|
| MD5 |
81ec05964ab0223cb108826a0ef21fe7
|
|
| BLAKE2b-256 |
67ebb99e73cb1d46640c68f3d11c5ceda4e233db92e247bdf617709b5d75bbd8
|