Commit Graph

1009 Commits

Author SHA1 Message Date
kennethreitz b756fc930a Change cross-reference links to use chapter view with anchors
- Same chapter refs: use anchor (#verse-X)
- Different chapter/book refs: link to chapter view with anchor
- Keeps users in reading flow instead of jumping to dedicated verse page

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 12:05:28 -05:00
kennethreitz c5484934c1 Complete top verses commentary coverage (100%) and add CLI tool
- Add commentary for remaining 63 top verses across 22 books
- Create scripts/commentary_cli.py for managing commentary
- Update .claude/agents/commentary-generator.md with improved instructions
- Remove deprecated one-off scripts and temp files
- Clean up verse_commentary.json (now using per-book files)

Books updated: 1 John, 1 Peter, Daniel, Deuteronomy, Ecclesiastes,
Esther, Ezekiel, Hebrews, Isaiah, Jeremiah, Job, Joshua, Luke,
Malachi, Mark, Micah, Proverbs, Psalms, Ruth, Zechariah, Zephaniah

Total: 12,992 verse commentaries across 66 books

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 11:57:50 -05:00
kennethreitz b21d0cd50b Add commentary for top searched verses (Matthew, John, Psalms)
- Add 52 Matthew verses (Beatitudes, Lord's Prayer, Great Commission, etc.)
- Add 38 John verses (I am statements, Upper Room, High Priestly Prayer)
- Add 19 new Psalms verses (Psalm 1, 23, 27, 34, 37, 46, 91, 103, 119, 127, 133, 139)
- Add scripts/check_top_verses.py to track coverage of top 536 most-searched verses
- Add scripts/migrate_commentary.py to safely merge commentary into per-book files

Coverage improved: 61.8% of top verses now have commentary.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 11:23:50 -05:00
kennethreitz c624c89a54 Add comprehensive utility tests and clean up about page
- Add 87 new tests covering search, books, stories, biographies,
  red letter, helpers, commentary loader, interlinear, cross-references,
  PDF generation, topics, and reading plans modules
- Coverage improved from 75% to 78% (497 tests total)
- Add pytest-cov dependency for coverage reporting
- Remove Strong's Concordance, Study Guides, and Reading Plans
  links from the About page's Explore Further section

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 10:54:56 -05:00
kennethreitz c8e6d30d8e Fix import error in commentary route
Change `from .. import bible` to `from ..kjv import bible` to match
the correct import pattern used throughout the codebase.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 10:42:21 -05:00
kennethreitz d4a1587d3f Fix commentary index navigation - add books to template context
The /about/commentary page was missing the books list needed for sidebar
navigation. Added get_books() call to provide books context to template,
matching pattern used in other about pages.

Fixes navigation rendering on commentary index page.
2025-12-02 10:37:20 -05:00
kennethreitz 713a1152b2 Add commentary for 4 highly-searched Bible verses
Added comprehensive commentary for famous verses across Gospels and Epistles:
- 1 John 4:18: Perfect love casteth out fear
- Hebrews 13:5: I will never leave thee nor forsake thee
- Luke 6:31: Golden Rule (do unto others)
- Mark 10:27: With God all things are possible

Each includes Greek word studies, historical context, theological depth,
and 5 reflection questions.

Coverage of top famous Bible verses now at 100% (43/43 verses)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 10:29:57 -05:00
kennethreitz 5759f65356 Add commentary for 6 highly-searched Proverbs verses
Added comprehensive commentary for famous Proverbs passages:
- Proverbs 16:18: Pride goeth before destruction
- Proverbs 18:21: Death and life in power of the tongue
- Proverbs 27:17: Iron sharpeneth iron (friendship)
- Proverbs 31:10: Who can find a virtuous woman
- Proverbs 31:25: Strength and honour are her clothing
- Proverbs 31:30: Woman that feareth the LORD (climax)

Each includes Hebrew word studies, historical context, and reflection questions.
Proverbs coverage: 13 chapters, 27 verses (up from 21 verses)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 10:15:44 -05:00
kennethreitz 60636c372d Add scripts for famous verse commentary generation
Added supporting scripts for generating commentary on highly-searched verses:
- Scripts to add Psalm 110 (Messianic), 95-96, 98 (worship), 145-150 (doxology)
- Script templates for adding missing famous individual verses
- JSON data files with commentary content

Note: These scripts were used to achieve 127/150 Psalms chapters (84.7% coverage)
with all major commonly-searched Psalms now having commentary.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 10:06:00 -05:00
kennethreitz 2b2e1faa7b Add commentary for 10 highly-searched Psalms (117→127 chapters, 84.7%)
Added comprehensive commentary for the most commonly googled Psalms:
- Psalm 110: Most quoted OT passage in NT (Messianic, Melchizedek priesthood)
- Psalms 95, 96, 98: Worship psalms (O come let us sing, new song)
- Psalms 145-150: Final doxology ending with "Let everything that hath breath praise the LORD"

All famous/commonly searched Psalms now have coverage:
✓ Psalm 23 (The Lord is my shepherd)
✓ Psalm 91 (He that dwelleth in the secret place)
✓ Psalm 110 (The LORD said unto my Lord)
✓ Psalms 95-98 (Worship and new song)
✓ Psalms 145-150 (Final doxology)

Coverage: 127/150 chapters (84.7%), only 23 chapters remaining

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 09:54:51 -05:00
kennethreitz d22a89ae3a Add theological commentary for Psalms 145-150 (Final Doxology)
Comprehensive verse-by-verse commentary for the final psalms of the Psalter:
- Psalm 145 (6 verses): "Extol thee, my God, O king" - perpetual praise commitment
- Psalm 146 (4 verses): "Praise ye the LORD" - contrast of human vs divine help
- Psalm 147 (5 verses): "Great is our God" - theological affirmations
- Psalm 148 (4 verses): Cosmic call to praise from heavens to earth
- Psalm 149 (3 verses): New song in congregation of saints with eschatological vision
- Psalm 150 (3 verses): Final psalm of Psalter with universal call to praise

Each verse includes:
- Deep theological analysis with Hebrew word studies
- Historical context from ancient worship through post-exilic Judaism
- 5 reflective study questions for personal and communal exploration

The final verse (150:6) "Let every thing that hath breath praise the LORD" provides the ultimate theological summary of the entire Psalter.

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 09:53:47 -05:00
kennethreitz c30525fc01 Fix Psalm 115:13 missing historical field - tests now pass
Added missing historical context for Psalm 115:13 covering:
- Post-exilic context and mockery from pagan nations
- Ancient Near Eastern social stratification
- Biblical theology of "fear of the LORD"

All verse commentary validation tests now passing.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 09:47:36 -05:00
kennethreitz ef428baee2 Add commentary for 76 additional Psalms chapters (41→117 chapters)
Generated comprehensive theological commentary for key verses across 76 Psalms:
- Psalms 2-5, 7-17, 19-21, 25-26, 28-30, 32-33, 35, 39-45, 47, 51-54, 57, 59-61, 63-71, 73-85, 87-88, 90, 92, 100-102, 104, 114-117, 138, 140, 142-143

Each commentary includes:
- Analysis: Hebrew word studies, theological exposition, Christological connections
- Historical context: Ancient Near Eastern background, biblical theology
- Reflection questions: 3-5 application-focused questions per verse

Coverage increased from 41 chapters (27%) to 117 chapters (78%)
Remaining: 33 chapters still need commentary

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 09:42:29 -05:00
kennethreitz efab66dcdc psalms improvements 2025-12-02 01:21:55 -05:00
kennethreitz e2905cf9fe Redesign sidebar navigation and add current page highlighting
- Cleaner link styling with rounded corners and hover backgrounds
- CSS triangle expand arrows instead of text characters
- Refined typography, spacing, and search box styling
- Add 'n' key to activate sidebar navigation (j/k to navigate, Enter to select)
- Highlight current page in green on sidebar links

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 00:45:38 -05:00
kennethreitz 6a9cebae22 Improve keyboard navigation, PDFs, and add non-writing prophets
- Add KJVNav.initSimpleNav() for DRY keyboard navigation across site
- Fix broken keyboard nav on 10+ resource pages (orphaned JS code)
- Left arrow on chapters now does browser back
- Add non-writing prophets: Moses, Samuel, Nathan, Elijah, Elisha
- Redesign chapter PDFs with glossary, cross-refs, book intro
- Style sidenotes as inline notes in all PDFs (fix checkbox squares)
- More liberal word studies in PDF output (for_pdf parameter)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 00:28:25 -05:00
kennethreitz 7606fa8c3a Remove smooth scrolling animation from all keyboard navigation
Changed scrollIntoView behavior from 'smooth' to 'auto' across all
templates for instant, non-animated navigation between selections.

Affected ~75 instances across 50+ template files.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 00:02:24 -05:00
kennethreitz d0a53868f7 Add keyboard navigation to about page
- j/k or arrows to navigate between paragraphs
- Space to read selected paragraph aloud
- Escape to clear selection
- Uses KJVNav helper for viewport-aware navigation
- Green outline selection style matching site design

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:59:35 -05:00
kennethreitz 28f37f68c3 Fix dark mode conflict when OS is dark but site theme is light
- Wrap prefers-color-scheme dark styles with html:not([data-theme="light"])
- Fixes interlinear text being white on yellowish background
- Updated verse.html, chapter_interlinear.html, tufte.css, base.html,
  and family-tree-expansions.css

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:51:57 -05:00
kennethreitz 2163d56185 Add !important to mobile sidenote display rules
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:41:22 -05:00
kennethreitz f61a78a6c5 Hide sidenotes on mobile by default, expand on click
- Add mobile media query to hide sidenotes by default
- Show sidenotes when checkbox is clicked (tap on number)
- Style expanded sidenotes with background and border for clarity

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:33:49 -05:00
kennethreitz a4f306a7c9 Remove hidden page notice from stats page
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:26:45 -05:00
kennethreitz f436560701 Add /api/stats endpoint for site statistics
- Add cached _get_site_stats() function with comprehensive metrics
- Create GET /api/stats endpoint with OpenAPI documentation
- Include bible, commentary, cross-references, red letter, study resources,
  language tools, and data statistics
- Add 8 tests for the new endpoint

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:23:04 -05:00
kennethreitz 16a684d714 Add About KJV Study link to homepage footer
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:19:37 -05:00
kennethreitz b520698453 Pass books to about page templates for sidebar rendering
- Add books to /about route
- Add books to /about/stats route
- Add books to /about/cross-references route

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 19:30:14 -05:00
kennethreitz 9549499d79 Remove non-working keyboard nav from about page 2025-12-01 19:12:20 -05:00
kennethreitz b11f6e9297 Add padding-bottom to asterism to prevent cutoff 2025-12-01 19:06:04 -05:00
kennethreitz 513577c143 Adjust asterism margin-top to -0.5rem 2025-12-01 19:05:37 -05:00
kennethreitz c26c603feb Add bottom margin to asterism in nav 2025-12-01 19:05:16 -05:00
kennethreitz 1855b3faca Make asterism smaller in nav 2025-12-01 19:04:55 -05:00
kennethreitz 0f11085d4e Move asterism directly below About KJV Study link 2025-12-01 19:04:35 -05:00
kennethreitz 97ff899a1f Remove newthought from Privacy section 2025-12-01 19:02:37 -05:00
kennethreitz 03eeeaabb5 Reduce newthought span to just 'KJV Study' in Data & Sources 2025-12-01 19:02:10 -05:00
kennethreitz e011a2789e Remove newthought from Free & Open Source section 2025-12-01 19:01:32 -05:00
kennethreitz 685a4103ea Add creedal newthought styling to theological declarations
- We confess, We worship, We affirm in small-caps
- Gives confessional, creedal feel to theological section

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 19:01:11 -05:00
kennethreitz cf8730a9a4 Restructure about page opening with creator intro
- Open with Kenneth Reitz creation story
- Merge creator section into opening paragraph
- Remove separate Creator section and TOC link
- Add no-arrow class to hide external link arrow on name

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:58:28 -05:00
kennethreitz f016a939fd Polish about page with newthought lead-ins
- Add Tufte-style newthought small-caps to section openings
- Remove analytics opt-out mention from privacy section
- Remove verbose paragraph from creator section

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:56:20 -05:00
kennethreitz 45659aff00 Move red letters toggle from nav to keyboard shortcut
- Remove "Disable Red Letters" link from sidebar navigation
- Add Shift+R keyboard shortcut to toggle red letters
- Update keyboard help modal with new shortcut

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:47:48 -05:00
kennethreitz f12ea31a7c Add tests for about pages
- TestAboutPages: 8 tests for main about page (TOC, sidenotes, keyboard nav, etc.)
- TestAboutStatsPage: 5 tests for stats page
- TestAboutCommentaryIndex: 4 tests for commentary index
- TestAboutCrossReferencesIndex: 4 tests for cross-references index

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:43:31 -05:00
kennethreitz d221aa95a3 Fix verse link regex matching 'As Matthew' as book name 2025-12-01 18:40:41 -05:00
kennethreitz 825656e6f9 Enhance About page with sidenotes, TOC, and keyboard navigation
- Add Tufte-style sidenotes with theological depth
- Add table of contents with two-column layout
- Implement j/k keyboard navigation using KJVNav pattern
- Promote h3 headings to h2 for cleaner hierarchy
- Remove "Our Purpose" heading, make intro text flow naturally

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:39:11 -05:00
kennethreitz 92839d36fc Completely rewrite About page with richer content and better prose
Major improvements throughout:

- Our Purpose: Establishes mission to serve the church with scholarly,
  theologically faithful resources; emphasizes accessibility
- Free & Open Source: Compelling case for open source with Matthew 10:8
  "Freely ye have received, freely give"
- Data & Sources: Rich historical context on KJV (47 scholars, 6 committees,
  1769 Blayney Edition), Treasury of Scripture Knowledge, Strong's (1890)
- Creator: Concise, humble, links to GitHub for engagement
- Privacy: Powerful statement - "Your study of Scripture is between you
  and God" and "The Word of God is not for sale"
- Explore Further: Clean links to all major resources
- Changed closing quote to John 1:1 (ties to Logos theology section)

Removed redundant sections, tightened prose, maintained theological
depth while improving readability. Page now has consistent scholarly
voice throughout.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:31:06 -05:00
kennethreitz 4432a7f096 Rewrite theological section with Hebrew/Greek and deeper content
After reviewing the actual commentary (Genesis 1:1, John 1:1, Isaiah 53:5,
Psalm 119:105, Matthew 28:19), rewrote the about page theology section
to accurately reflect the rich content found in the verse analysis:

- Added Hebrew/Greek terminology with original script (θεόπνευστος,
  דָּבָר, מְחֹלָל, λόγος, בְּרֵאשִׁית, etc.)
- Strong inerrancy & sufficiency claims matching commentary
- Explicit substitutionary atonement doctrine from Isaiah 53
- Trinitarian theology drawn from Matthew 28:19 commentary
- Christ's eternal deity from John 1:1 analysis
- Christocentric interpretation methodology
- Rejects rationalistic liberalism and mystical subjectivism
- Ends with Soli Deo Gloria

This now accurately represents the scholarly depth and theological
commitments found throughout the verse-by-verse commentary.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:28:03 -05:00
kennethreitz 0e425335fa Align theological claims with actual commentary content
After reviewing the commentary, adjusted the about page to be more
conservative and match what's actually taught in the verse analysis:

- Removed "and believer" from creator description (too performative)
- Scaled back from explicit Reformed distinctives (TULIP, covenant theology)
- Kept core orthodox doctrines: biblical authority, Trinity, salvation
  by grace through faith alone, Christ-centered interpretation
- Commentary emphasizes grace/faith but doesn't engage deeply with
  election, particular redemption, or other Reformed distinctives

Now the about page accurately represents the theological content
visitors will find in the actual commentary.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:21:05 -05:00
kennethreitz 3352d23476 Make h3 headings bold and condense TULIP section
- Added font-weight: bold to h3 styling for better hierarchy
- Condensed the five points of TULIP into a single paragraph
- Removed explicit labeling (Total Depravity, Unconditional Election, etc.)
- Kept all the theological content but made it less overt/formulaic

Still clearly Reformed but not as pedagogical in presentation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:17:07 -05:00
kennethreitz d880c04f97 Add link to Kenneth Reitz's personal website
Links 'Kenneth Reitz' to kennethreitz.org in the Creator section.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:15:50 -05:00
kennethreitz f0933b3bac Change navigation link text to 'About KJV Study'
More descriptive than just 'About' - makes it clear what the
link is about when viewing the navigation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:15:07 -05:00
kennethreitz 9d383fa455 Reorder heading to 'Free & Open Source'
Changed from "Open Source & Free" to "Free & Open Source"
to emphasize that the resource is free first.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:14:25 -05:00
kennethreitz 2ba1d28efd Add About link to navigation and breadcrumbs to all about pages
- Added About link at bottom of sidebar navigation
- Added breadcrumbs to /about, /about/stats, /about/commentary, /about/cross-references
- Removed emoji from "Open Source & Free" heading on about page

All about-related pages now have proper navigation structure.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:13:45 -05:00
kennethreitz 71eb152aa2 Simplify technical details section on about page
Condensed the extensive technical details into a single sentence
with link to GitHub repository. Users interested in architecture,
tech stack, and development details can find that information in
the README.

Keeps the about page focused on mission and theology rather than
implementation details.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:11:13 -05:00