Files
kennethreitz f605346780 Rewrite README with tighter structure and updated content
Consolidate feature sections, update test count to 941, add missing
API endpoints, and match the scholarly tone to the project's Tufte aesthetic.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-21 11:33:24 -04:00

6.2 KiB

KJV Study

A scholarly web application for deep study of the King James Bible — pairing the 1769 Cambridge text with original language tools, AI-powered commentary, and classical typography inspired by Edward Tufte.

kjvstudy.org


Overview

KJV Study provides the complete King James Bible (31,102 verses) alongside an extensive suite of research tools: interlinear Hebrew and Greek analysis, Strong's Concordance, cross-references, topical indexes, genealogies, reading plans, and verse-by-verse AI commentary. The entire application is served as a fast, accessible web experience with a full REST API.

git clone https://github.com/kennethreitz/kjvstudy.org.git
cd kjvstudy.org
docker compose up
# → http://localhost:8000

Features

Scripture

Original Languages

Commentary

AI-powered verse-by-verse theological analysis with chapter overviews, book summaries, historical context, word studies, and reflection questions — generated for all 66 books.

Study Resources

Theology Christology, Soteriology, Eschatology, Pneumatology
People Twelve Apostles, Women of the Bible, Prophets, Angels
Themes Parables, Covenants, Names of God, Fruits of the Spirit
History Timeline, Maps, Festivals
Guides Gospel, Salvation, New Believer, Prayer & Faith, &c.
Plans One-Year Bible, 90-Day NT, Chronological, &c.

39 resource categories, 36 study guides, 36 topical indexes, 12 reading plans, 25+ biblical stories (with children's versions).

Family Trees

429+ biblical figures across 77+ generations from Adam through the New Testament — with interactive ancestor/descendant navigation, biographical data, and GEDCOM-based genealogy.

PDF Export

Downloadable PDFs for verses, chapters, books, study guides, stories, and reading plans.

Accessibility

Keyboard navigation (Vim-style and arrow keys), screen reader support, text-to-speech, dark mode with system preference detection, and adjustable font sizes. See /accessibility.


Architecture

kjvstudy_org/
├── server.py                # FastAPI application
├── kjv.py                   # Bible text access
├── routes/                  # 16 route modules
├── utils/                   # Search, PDF, commentary helpers
├── templates/               # 77 Jinja2 templates
├── static/                  # Tufte CSS, ET Book fonts, JS
└── data/                    # Bible text, commentary, interlinear,
                             # Strong's, cross-references, topics,
                             # study guides, reading plans, stories,
                             # genealogy, timeline, and more
Backend FastAPI, Python 3.13, Gunicorn
Frontend Tufte CSS, ET Book, vanilla JS
Data JSON, SQLite (search), gzip (interlinear)
PDF WeasyPrint
Packaging uv
Infrastructure Docker, nginx, Fly.io
CI/CD GitHub Actions

API

Full REST API with interactive documentation.

GET /api/verse/{book}/{chapter}/{verse}
GET /api/verse-range/{book}/{chapter}/{start}/{end}
GET /api/books/{book}/chapters/{chapter}
GET /api/search?q={query}
GET /api/interlinear/{book}/{chapter}/{verse}
GET /api/strongs/{number}
GET /api/cross-references/{book}/{chapter}/{verse}
GET /api/topics/{topic}
GET /api/reading-plans/{plan}
GET /api/verse-of-the-day
GET /api/bible

All endpoints support book name abbreviations (Gen, Ex, Mt, Rev, &c.).


Development

# With Docker (recommended)
docker compose up

# Without Docker (requires Python 3.13+ and uv)
uv sync
uv run kjvstudy-org

# Tests (941 tests across 16 files)
uv run pytest tests/ -v

# Data validation
uv run python scripts/validate_data.py

Deployment

Deployed to Fly.io with fly deploy. Production runs behind nginx for static asset caching, with Gunicorn/Uvicorn serving the FastAPI application. Health checks, auto-recovery, and HTTPS are configured out of the box.


License

ISC License. See LICENSE.


"Study to shew thyself approved unto God, a workman that needeth not to be ashamed, rightly dividing the word of truth." — 2 Timothy 2:15