- Expand related resources with specific chapter mappings (Beatitudes, Armor of God,
I Am Statements, Trinity, Eschatology, Soteriology, etc.)
- Click on verse text navigates to verse page (mouse users), green selection is
keyboard-only
- Fix reading plan API import error (get_reading_text from reading_plans route)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add related_content to chapter page route with topics, people, resources, and stories
- Add Bible stories matching based on verse references in story data
- Improve topic matching to use actual verse references instead of hardcoded book list
- Display Related Resources section at bottom of chapter and verse pages
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Links inside words-of-christ spans now stay red with underline to indicate clickability, in both light and dark modes.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Shortened nav help to "Tip: ↑/↓ to select verses • ? for more shortcuts"
- Changed 'p' keyboard shortcut from Reading Plans to PDF download
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 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>
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>
Changed scrollIntoView behavior from 'smooth' to 'auto' to prevent overlapping scroll animations when holding down arrow keys. This eliminates stuttering and makes rapid navigation smooth.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Restored chapter.html to the version from commit fb4e970 which had the perfect working keyboard navigation. The recent changes to chapter view were not needed.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
**Book View Changes:**
- Chapter section is now a single item with green box outline
- Press ↓ to select chapter section
- Press Enter to drill down into individual chapters
- Press Esc to exit drilldown mode
- All paragraphs now use green box outline styling (consistent UX)
**Chapter View Changes:**
- Removed 'c' keyboard shortcut (reserved keyword)
- Updated help text
**Navigation Flow:**
1. Start: Press ↓ → selects chapter section (green box)
2. Press Enter → drills into first chapter number
3. Navigate ↑/↓ through chapter numbers
4. Press Enter on a chapter → navigate to that chapter
5. Press Esc → exit back to chapter section
6. Press ↓ from chapter section → move to paragraphs below
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Book view now supports navigating both chapter links and introduction paragraphs. Chapter view supports navigating action buttons, verses, and chapter selector controls.
**Book View:**
- Navigate through chapter numbers with ↑/↓
- Continue down to navigate through introduction paragraphs
- Press Enter on chapters to read them
- Visual feedback with green highlights for both zones
**Chapter View:**
- Three-zone navigation: actions, verses, chapter selector
- Press 'c' to jump to chapter selector
- Press Enter in chapter selector to focus dropdown
- Escape to clear selections
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Left/right arrows navigate between Interlinear and PDF buttons
- When in action zone, arrows move horizontally between buttons
- When in verse zone, left/right still navigate chapters as before
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Interlinear and PDF buttons now selectable with up/down navigation
- Up from first verse moves to action buttons, down from actions to verses
- Initial selection starts with verses (not actions) as requested
- Fixed read-aloud to exclude sidenotes from verse text
- Added selected state styling for action buttons
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Added KJVSpeech global helper using Web Speech API
- Space key reads aloud any element with green box selection
- Works on all pages with keyboard navigation (resources, parables, etc.)
- Chapter page has specialized handler for verse text
- Prefers English voices, cleans up text (removes verse numbers)
- Added Space key to keyboard shortcuts help modal
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Added global KJVNav helpers to base.html and updated 32 templates
to start keyboard selection from the viewport when the current
selection is off-screen. This provides a more intuitive navigation
experience - pressing up/down after scrolling starts from what's
visible rather than jumping to an off-screen location.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove study guides from homepage keyboard nav (too inline/sloppy)
- Add paragraph-level nav to resource_index.html (soteriology, etc.)
- Stories index: add category navigation, Enter jumps to first story in category
- Story kids: add adult callout and PDF button to nav
- Detail pages (topic, resource, reading_plan, parable): include paragraphs,
verse items, and PDF buttons in keyboard nav
- Chapter page: add 'i' for interlinear, 'p' for PDF shortcuts
- Book page: add 'p' for PDF shortcut
- Chapter interlinear: add 'p' for PDF shortcut
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Left arrow now uses history.back() when the URL has a verse hash
(indicating the user came from a story or verse link), otherwise
navigates to previous chapter as before.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Verse page:
- Now paragraph-based instead of section-based
- Up/down moves through paragraphs, cross-refs, interlinear
- Enter on interlinear enters word mode (like interlinear page)
- Left/right for word navigation in word mode
- Enter toggles word expansion
- Escape exits modes
Chapter page:
- Added h/l vim keys for prev/next chapter
- Added Escape to clear verse selection
- Left now falls back to book page if no prev chapter
Added Escape to clear selection on:
- topic_detail.html
- parable_detail.html
- study_guide_detail.html (also added Enter to follow links)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
When navigating to a chapter with a verse hash (e.g., #verse-24),
keyboard navigation now starts from that verse instead of -1.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Chapter view:
- ↑/↓ or j/k to select verses with visual highlight
- Enter to navigate to selected verse detail page
- Click on verse to select it
- Updated nav help text with new shortcuts
Verse detail page:
- ← to go back to chapter view (scrolls to current verse)
- ↑/↓ or j/k to navigate between verses
- Maintains existing ←/→ for chapter navigation
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- New Interlinear button next to PDF button
- Links to /book/{book}/chapter/{chapter}/interlinear
- Language/translation icon for the button
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Tightened template formatting to ensure no space appears
between the last reference and the period.
Now: Genesis 2:5.
Not: Genesis 2:5 .
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Each grouped cross-reference line now ends with a period for
proper punctuation.
Example:
References God: Hebrews 6:7; Genesis 1:29; Matthew 6:30.
Creation: Genesis 1:1; Hebrews 11:3; Isaiah 45:18.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Instead of creating multiple sidenotes (one per cross-reference),
all cross-references for a verse are now grouped into a single
sidenote with line breaks between them.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Sidenotes now continue numbering throughout the chapter
instead of resetting to 1 at each verse.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Replace 'color: inherit' with explicit color values to prevent sidenotes and word definitions from inheriting red color. Using #111 for light theme and #ddd for dark theme ensures proper contrast and readability.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Ensure all sidenote number elements are excluded from inheriting red letter color by adding .sidenote-number selector in addition to label.sidenote-number.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Prevent sidenotes from inheriting red color from red letter text by adding CSS rules that reset color inheritance for .sidenote, .marginnote, and .sidenote-number elements nested within .words-of-christ spans.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Expanded Revelation commentary from 45 to 335 verses (83% coverage),
providing detailed apocalyptic interpretation, Greek word studies, and
encouragement for persecuted believers. Also added red letter edition
support to highlight words of Christ throughout the Bible.
Revelation commentary additions:
- 290 new verses with comprehensive analysis
- All 22 chapters now have rich commentary coverage
- Apocalyptic imagery and symbolism explained
- First-century persecution context provided
- Multiple interpretive approaches acknowledged
- Christ-centered application for modern believers
Red letter edition features:
- Words of Christ highlighted in red in verse and chapter displays
- Complete database of Jesus' spoken words across all four Gospels
- Dark mode compatible color scheme
- Enhances readability and focus on Christ's teachings
Total verse commentary database now contains 14,827 verses across
all 66 books of the Bible with theological depth, practical application,
and reflection questions.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Add CSS to properly space and reset sidenote counters for each verse.
Prevents sidenote numbers from overlapping or appearing too close to
verse numbers.
Changes:
- Add margin to sidenote labels that follow verse numbers
- Reset sidenote counter for each verse paragraph
- Ensures clean numbering within each verse
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Implement red verse numbers to distinguish verses that have detailed
JSON-based commentary from those with generic template commentary.
Changes:
- Add is_enhanced flag to commentary generation logic
- Style verse numbers red when enhanced commentary exists
- Support both light mode (crimson) and dark mode (bright red)
Verses with enhanced commentary in verse_commentary.json now display
with red numbers, making it easy for users to identify which verses
have additional study resources available.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add description blocks to verse, chapter, book, and study guide templates
- Include "KJV" in descriptions for better SEO (commonly searched term)
- Verse pages now show verse text in description (155 chars)
- Chapter pages show book/chapter info with first verse excerpt
- Book pages include book introduction excerpt when available
- Homepage and other index pages have descriptive meta tags
- All templates now have proper SEO-friendly meta descriptions
Verified all other resource templates already had descriptions.
All tests passing (268 passed, 1 skipped).
🤖 Generated with Claude Code
https://claude.com/claude-code
Co-Authored-By: Claude <noreply@anthropic.com>
Re-add the filter function that was accidentally removed during
refactoring. This filter injects sidenote markers into verse text
for word study annotations.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Create utils/ package with:
- books.py: Book name normalization and abbreviations
- search.py: Full-text search functionality
- helpers.py: Common utilities (verse parsing, daily verse, etc.)
- Create routes/ package with:
- api.py: All /api/* endpoints extracted to APIRouter
- Update server.py to:
- Import from new modular structure
- Include API router for cleaner organization
This is the first step toward breaking up the 12,600+ line server.py
into maintainable modules. The old API routes in server.py are still
present as a transition - they can be removed once tests confirm the
new router works correctly.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Reorder chapter view so commentary appears after the Scripture text
rather than before it, allowing readers to engage with the primary
text before reading interpretive material.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Implement automatic word-study sidenote system that adds original language
insights throughout all 66 books of Scripture.
**24 Theological Terms Covered:**
- Divine names: God (Elohim/Theos), LORD (YHWH/Kurios)
- Core theology: love, faith, grace, mercy, righteous, salvation, redeem
- Covenant terms: covenant (berit/diatheke), sacrifice, kingdom
- Attributes: glory (kavod/doxa), holy (qadosh/hagios), peace (shalom/eirene)
- Additional: spirit, wisdom, truth, sin, word (davar/logos)
- NT terms: church (ekklesia), baptize, gospel (euangelion)
**Features:**
- Testament-aware: OT shows Hebrew/Aramaic, NT shows Greek
- Each sidenote includes:
- Original language script (אֱלֹהִים, Θεός, etc.)
- Transliteration (Elohim, Theos, etc.)
- Rich theological explanation
- Cross-references where relevant
**Coverage:**
- Automatic detection in every verse across all chapters
- Multiple word studies per verse when applicable
- Scholarly depth matching professional study Bibles
**Result:**
Every chapter now functions as a mini Hebrew/Greek lexicon. Verses like
Genesis 1:1 show "God: אֱלֹהִים (Elohim) - plural of majesty suggesting Trinity"
John 3:16 shows "Love: ἀγάπη (Agape) - self-sacrificial divine love"
Transforms kjvstudy.org into comprehensive original language study resource.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Clean up chapter pages by removing historical context marginnotes.
Keeps cross-reference sidenotes but removes historical commentary
for cleaner presentation.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Chapter page improvements:
- Styled navigation container with modern UI
- Previous/Next chapter buttons prominently displayed
- Chapter dropdown selector for quick jumping
- "Back to book" button for context navigation
- Visual hierarchy with primary/secondary button styles
Keyboard navigation:
- Left arrow key: Navigate to previous chapter
- Right arrow key: Navigate to next chapter
- Prevents navigation when user is in input fields
Enhanced UX:
- Clear visual feedback on button hover
- Helpful tip about keyboard shortcuts
- Accessible select dropdown with all chapters
- Responsive design compatible with mobile styles
The navigation container is styled consistently with
site design using CSS variables for theming support.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>