Added copy event handler that cleans selected text before
copying to clipboard, removing sidenotes, marginnotes, and
verse number links. Also added user-select: none to verse
number links for visual consistency.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Sidenotes, marginnotes, and sidenote number labels are now
excluded from text selection, so selecting verse text only
captures the actual verse content.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Changed click behavior so text can be selected:
- Single click now allows normal text selection
- Double-click navigates to verse page
- Verse number link still works for single-click navigation
- Updated nav help tip to explain new behavior
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Ezra 3:5-7 and 3:9 had malformed data with numeric keys
instead of proper analysis/historical/questions fields.
Added proper scholarly theological commentary.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Previously, stories.py loaded all story JSON files on every request
and timeline.py loaded biblical_timeline.json on every request.
Now both use module-level caching for better performance.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Press 0 from anywhere on the site to return to the homepage.
Also updated the keyboard help modal to show this shortcut.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
All resource pages (parables, christology, biblical-prophets, etc.)
now correctly highlight the Resources nav item in the sidebar.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
New stories added:
- Joseph Interprets Pharaoh's Dreams (patriarchs)
- Manna and Quail from Heaven (exodus)
- Water from the Rock at Horeb (exodus)
- David and Bathsheba (kings)
- Absalom's Rebellion (kings)
- Solomon Builds the Temple (kings)
- The Kingdom Divided (kings)
- Elisha Raises the Shunammite's Son (elijah/elisha)
- Daniel's Faithfulness with Food (prophets)
- An Angel Appears to Joseph (jesus birth)
- Jesus Calls His Disciples (ministry)
- The Sermon on the Mount (ministry)
- The Trial of Jesus (passion)
Each story includes adult and kids versions with full narratives.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Links now point to chapter view with verse anchor instead of individual
verse pages. Handles verse ranges (4:14-21), chapter ranges (27-28),
and single chapters properly.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add dedicated Bible Stories stats section showing categories, story count,
kids versions, word counts (85k adult / 58k kids), characters, and themes
- Fix story search autocomplete on both /stories and /stories/kids pages
(was looking for h3>a but cards are structured as a.story-card>h3)
- Increase autocomplete results from 5 to 8
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
New stories added across multiple categories:
- Exodus/Wilderness: Balaam and the Talking Donkey, Joshua Commissioned
- Conquest & Judges: Sun Stands Still, Ehud, Jephthah's Vow
- Kings: David Spares Saul, Hezekiah's Prayer, Josiah Finds the Law
- Prophets: Jeremiah in the Cistern
- Jesus Ministry: Boy Jesus at Temple, Cleanses Temple, Widow's Mite,
Nicodemus, Rich Young Ruler, Heals Demon-Possessed Boy
- Acts: Stephen the Martyr, Ananias/Sapphira, Peter Escapes Prison,
Paul at Mars Hill
Each story includes adult and kid-friendly versions with full narratives,
themes, characters, and verse references.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- 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>
Users can access books via the Books page. Cleaner nav focuses on
features and actions rather than duplicating book navigation.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Increase --text-secondary from #a3a3a3 to #c4c4c4 for better readability
- Update verse text to use text-primary with 0.85 opacity for clearer Scripture
- Change verse item border to accent-color for better visual hierarchy
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add thermometer-style green fill on "Your Reading Plans" items
- Singular/plural heading based on number of plans with progress
- Keyboard navigation includes "Your Reading Plans" items first
- j/k navigates through your plans then into the grid
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add "Your Reading Plans" section showing plans with saved progress
- Display progress bars and percentage on plan cards
- Show "Up next: Day X" for in-progress plans
- Include full Scripture text in all PDFs (including 365-day plans)
- Show Scripture references in collapsed day headers
- Arrow points right when collapsed, down when expanded
- Use green (#4a7c59) for completed days instead of dark color
- Enhanced keyboard navigation for chapter sections when expanded
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add API endpoint /api/reading-plans/{plan_id}/day/{day_num} for fetching
Scripture text on demand
- Update template to load text via API when days are expanded (not upfront)
- Implement cascading progress: checking a day marks all previous days
as complete, unchecking removes all subsequent days
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Features:
- Full Scripture text now available for ALL plans (including 365-day)
- Collapsible day sections - click to expand/collapse
- "Mark as Read" checkboxes with localStorage persistence
- Progress bar showing completion percentage
- Day navigation with completed days highlighted
- Expand All / Collapse All / Reset Progress buttons
- Keyboard shortcuts: j/k navigate, Enter/Space expand, x mark complete
- PDF verses now display one per line
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
New reading plans:
- Books of Moses in 40 Days (pentateuch_40)
- Major Prophets in 60 Days (prophets_60)
- Minor Prophets in 14 Days (minor_prophets_14)
- Wisdom Literature in 30 Days (wisdom_30)
- Historical Books in 45 Days (historical_45)
- General Epistles in 14 Days (general_epistles_14)
Features:
- Reading plan pages now show full Scripture text for plans 90 days or less
- Day navigation bar for quick jumping between days
- PDF exports include full Bible text for shorter plans
- Refactored Jinja filters into separate jinja_filters.py module
- Added parse_reading_reference() and get_reading_text() helpers
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Original Language Analysis: collapsible, expanded by default, remembers preference
- Cross References: collapsible, expanded by default, remembers preference
- Both sections use toggle buttons with arrow icons and keyboard focus support
- Preferences stored in localStorage (interlinear-expanded, crossrefs-expanded)
🤖 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>
- Extracted ~1250 lines of JavaScript from base.html to static/base.js
- Reduced base.html from ~2700 lines to ~1440 lines
- Updated tests to expect 404 (not 500) for invalid resources
- Updated CLAUDE.md to reflect proper error handling
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Updated parseVerseUrl to recognize /book/{book}/chapter/{chapter}#verse-{verse} format in addition to the old /verse/ path format.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Changed active page button from dark link-color to green (#4a7c59) with white text for better visibility.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Updated base.html JavaScript to use chapter anchors instead of verse pages
- Added filter to skip text nodes inside anchor tags to prevent double-linking
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>