Commit Graph

1257 Commits

Author SHA1 Message Date
kennethreitz f8640eadbb Limit word studies to 1 per verse
Prevents sidenote collision when two word studies appear
on the same line, which causes horizontal displacement.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 23:26:36 -05:00
kennethreitz bd6ce112d9 Add margin-bottom to sidenotes for vertical spacing
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 23:25:24 -05:00
kennethreitz aa7929205e Fix sidenotes pushing each other horizontally
Add clear:right to ensure sidenotes stack vertically
instead of being pushed off to the side.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 23:23:45 -05:00
kennethreitz cb39aa5a8f Show 1 ref per theme, max 3 themes unexpanded
Cross-refs collapsed view now shows:
- First ref from up to 3 theme groups
- Click to expand and see all refs in all groups

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 23:21:04 -05:00
kennethreitz bcc96b8be5 Show up to 3 refs per theme before expanding
Cross-references now show first 3 verses per theme group in the
collapsed view. Additional refs beyond 3 per group are hidden
until expanded.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 23:20:20 -05:00
kennethreitz 27800962d7 Fix word study collapse with !important
Ensure word-study-details is properly hidden by adding !important
to override any conflicting Tufte CSS rules.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 23:18:02 -05:00
kennethreitz be82b91ac5 Add 31 more word studies (103 total)
New entries: messiah, lamb, shepherd, light, darkness, obey,
commandment, servant, promise, fulfill, transgression, iniquity,
abomination, blessed, curse, remnant, firstborn, cornerstone,
vine, bread, water, rock, door, crown, throne, king, bride,
dwell, abide, walk, call

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 23:16:29 -05:00
kennethreitz 4e98b5c083 Remove arrow from cross-ref count indicator
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 23:13:29 -05:00
kennethreitz da84f66fbc Add ▸ arrow indicator to cross-ref +N count
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 23:13:09 -05:00
kennethreitz 38c0ee8d2f Fix cross-ref layout shift by using inline expand
Extra refs now appear inline when expanded rather than
swapping between preview/details elements. This prevents
any layout shift when clicking to expand.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 23:12:20 -05:00
kennethreitz 803c3cbe39 Simplify cross-ref expand CSS to reduce layout shift
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 23:10:29 -05:00
kennethreitz 46e2c042b1 Show first ref from each group in collapsed cross-refs
Collapsed view now shows one ref per theme/description group
(e.g., "Prophecy: Isa 7:14; Fulfillment: Matt 1:23 +3")
so users see the variety of cross-reference types at a glance.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 23:09:05 -05:00
kennethreitz 22de2194cd Collapse cross-refs by default, show first ref with expand for all
Cross-reference sidenotes now show just one verse reference by default
with a "+N more" indicator. Click to expand and see all grouped refs.
This reduces sidebar clutter while keeping all cross-refs accessible.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 23:08:13 -05:00
kennethreitz 5332c79c45 Collapse word studies by default, show only word + Greek term
Word study sidenotes now show just the word and Greek/Hebrew term by default.
Click to expand and reveal transliteration and full definition.
Adds a subtle ▸ indicator showing the sidenote can be expanded.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 23:06:29 -05:00
kennethreitz e9cd2dd8f8 Limit cross-references to 3 groups, 4 refs per group
Reduces sidebar clutter by capping cross-references displayed per verse.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 23:05:09 -05:00
kennethreitz c397e8a8a0 Fix red letter styling bleeding into sidenote links
Links inside sidenotes (like "Jesus" or Strong's references) were
inheriting the red color from .words-of-christ styling due to an
!important rule in base.html. Added more specific sidenote link rules
with !important to override.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 22:51:07 -05:00
kennethreitz db8e5314ac Add 20 theological word studies and Strong's links in sidenotes
New word studies for theologically significant terms:
- Salvation/soteriology: save, justify, sanctify, propitiation, atonement,
  reconcile, redeem, impute
- Faith/belief: repent, believe, confess, born again
- Ecclesiology: elect, predestine, adoption, inheritance
- Other: forgive, mediator, comforter, witness

Also links Greek/Hebrew terms in sidenotes to their Strong's concordance
pages (e.g., λόγος links to /strongs/G3056).

Total word studies: 72

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-04 22:48:03 -05:00
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