Commit Graph

1240 Commits

Author SHA1 Message Date
kennethreitz 3eb4ec2bc8 Add fallback to find alternative word studies when Strong's don't match
When the English word appears in a verse but doesn't match the expected
Strong's number (e.g., "word" using G4487/rhema instead of G3056/logos),
the system now tries to find another word study that DOES match one of
the verse's actual Strong's numbers.

This prevents leaving the user with no word study when we have a
relevant definition for another Greek/Hebrew term in the verse.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 22:37:55 -05:00
kennethreitz 89eeec24a8 Cross-reference word studies with interlinear Strong's numbers
Word study sidenotes on chapter views now verify that the Greek/Hebrew
word in the verse matches the expected Strong's number before displaying.
This prevents showing definitions for the wrong underlying word when the
same English word translates different original language terms.

Changes:
- Add Strong's numbers to all 50+ word studies in word_studies.json
- Update generate_word_study_sidenotes() to check interlinear data
- Only show word study if one of its Strong's numbers is in the verse

Example: "word" in Matthew 4:4 uses G4487 (rhema), not G3056 (logos),
so the logos-focused word study won't appear there incorrectly.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 22:34:58 -05:00
kennethreitz fa4afcd76e Fix red letter markup in Revelation 1-3
The narrative introductions to the seven church letters ("And unto the
angel of the church in X write;") were incorrectly marked as Jesus's
words. Only the portion after "write;" where Jesus actually speaks
should be red.

Fixed 8 verses:
- Rev 1:17: Exclude John's narrative intro
- Rev 2:1, 2:8, 2:12, 2:18: Exclude "unto the angel...write" intros
- Rev 3:1, 3:7, 3:14: Same fix for remaining church letters

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 22:19:00 -05:00
kennethreitz cf1e93ebdc Add large font mode for verse text on verse page
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 14:20:50 -05:00
kennethreitz ba878bb295 Redesign interlinear analysis: stack words vertically
- Original word on top, English translation and Strong's number below
- Centered alignment for cleaner reading
- Improved spacing and typography

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 14:13:50 -05:00
kennethreitz 112381ada1 Fix search dropdown background in light mode
- Set explicit #ffffff background for family tree search dropdown
- Darken border slightly for better definition

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 11:51:41 -05:00
kennethreitz a7fe7ec79f Hide sidebar fully on mobile, remove breadcrumb drop shadow
- Push collapsed sidebar further off-screen (-165px)
- Remove box-shadow from sticky breadcrumb

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 11:41:29 -05:00
kennethreitz 5aa374cace Fine-tune sidebar/content spacing at narrow tablet widths
Add 85px margin at 769-950px range to prevent sidebar overlap

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 11:33:53 -05:00
kennethreitz 38277fbb82 Fix sidebar layout: content beside sidebar, not overlapping
- Add 30px margin-left to article when sidebar visible (above 768px)
- Reset margin on mobile when sidebar hidden
- Adjust breadcrumb to align with sidebar edge

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 11:30:48 -05:00
kennethreitz d8271d5ca3 Align breadcrumb with content when sidebar visible
Push breadcrumb over by 140px in the 769px-1200px range to match article margin

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 11:18:40 -05:00
kennethreitz 07fd584801 Fix sidebar layout: show on wider viewports, sit beside content
- Change sidebar hide breakpoint from 1200px to 768px (mobile only)
- Add margin-left to article only between 769px-1200px (when sidebar visible)
- Above 1200px: no margin (desktop, centered content)
- Below 768px: no margin (mobile, sidebar hidden)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 11:17:27 -05:00
kennethreitz 45881e9852 Remove script for adding commentary to 1 Chronicles 2025-12-04 10:48:18 -05:00
kennethreitz 51ca77249d Remove unused verse_collections module and data file
Dead code identified via test coverage analysis (0% coverage, no imports)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 10:46:23 -05:00
kennethreitz 115acd784c Fix critical Python code issues: bare except and unclosed file handles
- Replace bare except with specific exceptions in helpers.py
- Use context managers for all JSON file operations in about.py and api.py
  to ensure proper file handle cleanup

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 10:40:30 -05:00
kennethreitz 4b63f9dc6a Improve verse page layout: move cross-refs up, restyle share section
- Move cross-references section above share section
- Convert share buttons to pill style matching cross-refs
- Unify heading styles (1.4rem) for Cross References, Original Language
  Analysis, and Share sections
- Fix tooltip exclusion for share section links

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 10:28:05 -05:00
kennethreitz ad4f611370 Fix: support space-separated verse refs in nav search (e.g., "rev 22 20")
Added pattern to parseVerseReference() to handle "Book Chapter Verse"
format in addition to "Book Chapter:Verse".

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 10:21:07 -05:00
kennethreitz bed94494ff Fix: restore dark mode rules to templates where needed
CSS cascade order means template <style> blocks load after style.css,
so dark mode overrides for template-specific classes must stay inline.
Restored .section-card and .person-card-* rules to family_tree templates.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 10:15:32 -05:00
kennethreitz 09c943e795 Fix: add !important to section-card dark mode rules
Template inline styles have higher specificity than external CSS,
so dark mode overrides need !important to take precedence.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 10:14:26 -05:00
kennethreitz b7d9ccc859 Move shared CSS rules from base.html to style.css
Relocate shared large font mode and dark mode rules to style.css
for proper separation of concerns. Includes rules for:
- Large font: .intro-text, .verse-ref, .verse-text, .print-btn, etc.
- Dark mode: .words-of-christ, .section-card, .person-card-*, .nav-paragraph.selected

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 10:13:30 -05:00
kennethreitz 8d02b5b8eb Refactor: consolidate shared dark mode rules in base.html
Move common dark mode CSS rules to base.html:
- .words-of-christ
- .section-card, .section-card h2
- .person-card-name, .person-card-verse
- .nav-paragraph.selected

Reduces duplication across 6 templates.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 10:10:15 -05:00
kennethreitz 9a74654d9f Update CLAUDE.md: reflect actual test count (941 tests)
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 10:01:25 -05:00
kennethreitz 8c9cc98a16 Refactor: consolidate shared large font mode rules in base.html
Move common large font mode CSS rules (.intro-text, .verse-ref,
.verse-text, .print-btn, etc.) to base.html to reduce duplication
across templates.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:58:04 -05:00
kennethreitz fc00f1349b Remove temporary summary file 2025-12-04 09:54:18 -05:00
kennethreitz 7ee55edd69 Add commentary for 22 verses and large font mode for templates
New verse commentary:
- Job: 13:2, 27:21, 28:16, 28:21, 35:11
- Exodus: 7:4, 7:5, 7:8, 7:9, 7:11
- John: 14:17, 14:18, 14:20, 15:2, 15:15 (Upper Room Discourse)
- Acts: 13:23, 13:30, 13:33, 16:5, 16:10, 17:30, 17:31 (Paul's sermons)

Also adds large font mode CSS to multiple detail templates.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:52:16 -05:00
kennethreitz 7c68d633d1 Add large font mode support for story cards and concordance
Enlarge text in story cards (stories index, kids stories) and
occurrence cards (Strong's concordance) when big font mode is enabled.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:48:08 -05:00
kennethreitz c572c72669 Add grid keyboard navigation for interlinear words
Arrow keys now navigate words in a 2D grid pattern:
- Left/Right: move to adjacent words in same row
- Up/Down: move to closest word in row above/below
- Enter: expand word details
- Escape: exit word mode

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:41:32 -05:00
kennethreitz 01f5b1ba7b UI improvements: nav pills, breadcrumb positioning, anchor offsets
- Convert verse navigation to pill-style buttons
- Extend breadcrumb bar to the left with padding
- Add scroll-margin-top for verse anchors on chapter page
- Rename 'Chapter X' to 'Read in Chapter X'

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:36:08 -05:00
kennethreitz 0869cc4e25 Enlarge word-english and cross-reference pills in large font mode
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:30:24 -05:00
kennethreitz 833018aa6e Compact original language analysis and simplify verse page
- Inline horizontal layout for interlinear words (original + English + Strong's)
- Larger font for Hebrew/Greek text (1.6-1.8rem)
- Remove expand/collapse from interlinear section (always visible)
- Rename 'Analysis' to 'Analysis & Commentary'

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:28:50 -05:00
kennethreitz cc02a4afa5 Make cross-references compact and improve sidebar styling
- Cross-references now display as compact pills (always visible, no collapse)
- Hover tooltip shows verse text
- Sidebar current selection is now bold (font-weight: 700)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:24:58 -05:00
kennethreitz 0800e9de94 Support space-separated verse references (e.g., 'Rev 22 20')
- Update VerseReference.from_string to parse 'Book Chapter Verse' format
- Update is_verse_reference regex to match space format
- Add book name normalization to parse_verse_reference
- Update quick lookup JS to handle space format

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:17:52 -05:00
kennethreitz e7a1296187 Complete 1 Chronicles commentary (all 976 verses)
Added missing verse 14:17 with Hebrew word studies (shēm, pachad)
and theological analysis connecting to Messianic kingdom.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:17:05 -05:00
kennethreitz b5fbe571ba Improve filter pill design in light mode
- Transparent background instead of gray
- Rounded pill shape (border-radius: 20px)
- Subtler text color
- Light red tint on hover

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:13:46 -05:00
kennethreitz 398acd6117 Add links to about page including Red Letter Edition
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:12:58 -05:00
kennethreitz 7db7f9771d Use green keyboard nav highlight on red letter page for consistency
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:11:59 -05:00
kennethreitz 4b36f9ed77 Add Red Letter Edition page showing words of Christ
- New /red-letter route with filterable, paginated verse list
- Stats showing total verses, full/partial breakdown
- Red letter text rendering with highlighting
- Keyboard navigation support

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:10:33 -05:00
kennethreitz 48f710533e Remove broken red-letter link from README
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:08:14 -05:00
kennethreitz 908867f596 Add links throughout README
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:07:27 -05:00
kennethreitz 97351b0fba Add links to study guides and reading plans in README
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:06:03 -05:00
kennethreitz ccf72259f1 Add links to resource examples in README
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:05:41 -05:00
kennethreitz 3b57b67a02 Remove commentary_20_verses.json from tracking
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:04:49 -05:00
kennethreitz 16ccc9bf25 Remove temporary commentary files from tracking
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:04:44 -05:00
kennethreitz f4c2b70f6e Improve README with comprehensive feature documentation
Streamlined structure, added AI commentary, Strong's Concordance details,
family tree explorer, PDF export, accessibility features, and API docs.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 09:03:56 -05:00
kennethreitz eeb725bfb8 Update accessibility page with Strong's keyboard shortcuts
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 08:59:30 -05:00
kennethreitz ca1fc5081f Fix keyboard nav: left arrow goes back, right arrow goes to next word
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 08:58:39 -05:00
kennethreitz 59ce51757f Add arrow key navigation for Strong's entry pages
Left arrow (or h) goes to previous word, right arrow (or l) goes to next.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 08:58:15 -05:00
kennethreitz 5a807b891a Fix search button styling on Strong's page for dark mode
Use consistent green color instead of --link-color which had poor
contrast (light gray background with white text) in dark mode.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 08:56:50 -05:00
kennethreitz 1f4bf35e20 Add automatic cache-busting for static files
Use file modification time hash for base.js and tufte.css to
automatically bust browser cache when files are updated.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-03 23:21:57 -05:00
kennethreitz bc1a70dd3b Add cache-busting version to base.js
Force browsers to load fresh base.js with sidebar close fix.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-03 23:19:54 -05:00
kennethreitz 859d6fbc31 Fix keyboard navigation on books page
Wrap KJVNav.initGridNav call in DOMContentLoaded to ensure
base.js has loaded before accessing the function.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-03 23:18:38 -05:00