Skip to main content

biblestudy-cli

GitHub Release Last Commit Python Version License: MIT

OpenAI API Bible API NLT API ESV API

BibleStudy CLI — a text-based Bible study companion for your terminal.

Powered by api.bible, api.nlt.to, api.esv.org, and OpenAI.
Inspired by SimplyScripture.

Note: Neither I nor this tool are affiliated with SimplyScripture — I just like their concept and wanted a CLI version.


✨ Features

  • Input or detect Bible references (e.g., John 3:16)
  • Choose from the following translations:
    • ✅ NLT (New Living Translation) — via api.nlt.to
    • ✅ ESV (English Standard Version) — via api.esv.org
    • ✅ FBV (Free Bible Version)
    • ✅ KJV (King James Version)
    • ✅ ASV (American Standard Version)
    • ✅ WEB (World English Bible)
  • Retrieve verse content and:
    • ✏️ Simplify it
    • 🗣️ Translate into modern speech
    • 🏺 Reveal historical background
    • 🔗 Cross-reference other scriptures
    • 🔍 Highlight key terms
    • 🛠️ Apply to daily life
  • 📅 Verse of the Day support (automatically shown on launch or via Option 9)
  • Save study notes automatically
  • Works in any terminal — beautiful output powered by rich

🚀 Quickstart

🔐 API Keys Setup

You'll need:

Set environment variables:

export OPENAI_API_KEY=your-openai-key
export BIBLE_API_KEY=your-api-bible-key
export NLT_API_KEY=your-nlt-api-key
export ESV_API_KEY=your-esv-api-key
export BIBLESTUDY_NOTES_DIRECTORY=./notes  # optional override

Or use config.py locally (not recommended for production).

Install from PyPI

This package is published to PyPI, so you can install using pip directly:

pip install biblestudy
biblestudy

...OR Install Locally

To install the package locally for development or testing:

# Clone the repository (if you haven't already)
git clone https://github.com/labrack/biblestudy-cli.git
cd biblestudy-cli

# Install the package in development mode
pip install .

This is equivalent to the old way of running python main.py, but now the biblestudy command is available system-wide after installation.


🚀 Requirements

  • Python 3.9+
  • requests, openai, rich, beautifulsoup4

Install dependencies:

pip install -r requirements.txt

▶️ Running the App

Once installed, you can run the Bible study CLI from anywhere:

# Run the CLI using the installed command
biblestudy

💬 Sample Run

📖 Welcome to the Bible Study CLI 📖

Enter a Bible reference (e.g., John 3:16) or a snippet of scripture.

>> John 3:16

Which translation would you like to use?
[1] NLT (New Living Translation)
[2] ESV (English Standard Version)
[3] FBV (Free Bible Version)
[4] KJV (King James Version)
[5] ASV (American Standard Version)
[6] WEB (World English Bible)

Enter the number for your translation [1-6]: 1

Fetching NLT passage: John 3:16... done.

📜 John 3:16
╭────────────────────────────────────────────────────────────────────────────╮
│ For God loved the world so much that he gave his one and only Son, so     │
│ that everyone who believes in him will not perish but have eternal life.  │
╰────────────────────────────────────────────────────────────────────────────╯

What would you like to do?
[1] ✏️  Simplify
[2] 🗣️  Modern English
[3] 🏺 Background
[4] 🔗 Cross-References
[5] 🔍 Keyword Focus
[6] 🛠️ Life Application
[7] 🔄 Change Translation for Current Reference
[8] ➕ Enter a New Bible Reference
[9] 📅 Show the Verse of the Day
[0] 🚪 Exit

💾 Saving Notes

Your study results are saved to the notes/ folder by default.
You can change the location with the BIBLESTUDY_NOTES_DIRECTORY environment variable.


💡 Tips for Development

  • Don't commit your real API keys — use the provided .gitignore to ignore config.py
  • Use .env.example as a template for local testing
  • Notes are plain .txt files and easy to back up

🍎 Mac-Specific Notes

If you see a warning like this:

NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+, currently using LibreSSL

✅ You can safely ignore it, or pin urllib3<2 in your requirements to avoid it.


🔮 Future Ideas

  • Add fuzzy search for snippets (e.g. "love is patient")
  • Support full chapter navigation
  • Offline caching for entire books
  • Save notes in Markdown format
  • Session resume after crash
  • UI upgrade using textual or urwid

📜 License

MIT License — use freely and contribute back!

Metadata

Release files for biblestudy 1.4.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for biblestudy 1.4.2
File Size Uploaded
biblestudy-1.4.2.tar.gz 18.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for biblestudy 1.4.2
File Interpreter ABI Platform
biblestudy-1.4.2-py3-none-any.whl Python 3 none any Details

Total release size: 35.3 kB

Release files / biblestudy-1.4.2.tar.gz

Download URL biblestudy-1.4.2.tar.gz
Size 18.2 kB
Tags Source
SHA-256 checksum
How to use checksums
f3e2598620fcd5c99420d57ae4ca49cfcc843f222ca15e01c22ce858153d7b22
BLAKE2b-256 checksum
How to use checksums
a148100bef92e40ed3036e50b3afabf3884f4ace290cda31821f633117e26f5c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.13

Release files / biblestudy-1.4.2-py3-none-any.whl

Download URL biblestudy-1.4.2-py3-none-any.whl
Size 17.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bbf5d29ad46b28de1d1e9a28fcf3c12893cfceec2d9be7098b3266b729cc724a
BLAKE2b-256 checksum
How to use checksums
0efb1e41e10ab9cd789ae21a7cfb528791296964b203dc524d8528d1f23726c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.13

Release history Release notifications | RSS feed

This release

1.4.2 This release

2 release files

1.4.1

2 release files

1.4.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page