Systematically reviewed Psalm stanza break placements and fixed
off-by-one errors where breaks were at section endings rather than
beginnings of new sections.
Fixed Psalms: 35, 38, 56-61, 64, 69-71, 74-76, 79-80, 82-83, 85, 88
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Luke 2: [14,32,35] → [14,33] - break after Nunc Dimittis ends at v32
- Revelation 7: [12,17] → [13] - v12 is part of angels' hymn, v13 starts elder's question
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Fix Psalm 119: now breaks every 8 verses for acrostic structure
- Fix Song of Solomon: correct speaker change breaks
- Add scholarly stanza breaks for all 150 Psalms
- Add breaks for Job, Proverbs, Lamentations, Ecclesiastes
- Extract stanza break data from eBible USFX (199 breaks across 127 psalms)
- Add poetry_loader utility to identify poetry books and stanza breaks
- Render Psalms with verse-per-line layout and ❧ ornament at stanza breaks
- Add stanza break styling to chapter and book PDF exports
- Web view: decorative hedera with subtle line divider
- PDF view: simple horizontal rule for stanza breaks
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Adds 2,543 section headings (e.g., "The Sermon on the Mount",
"The Suffering Servant") that display before verses in chapter
pages. Headings are loaded from JSON and rendered as styled h3
elements in the Tufte typography style.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
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>
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>
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>
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>
- 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>
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>
Add "Solomon's Song" and "Solomons Song" as aliases that redirect
to "Song of Solomon" for backwards compatibility with old links.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Update verse references in verses-1769.json
- Rename data files (solomons_song.json -> song_of_solomon.json)
- Update book mappings in books.py
- Fix VerseReference.from_string() to handle multi-word book names
like "Song of Solomon" (was only handling 2-word names)
- Update sitemap and metadata files
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
The verse_collections module is not tracked in git and unused.
Removes tests that were failing in CI due to missing module.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Rename 'hebrew' field to 'original'
- Add 'H' prefix to Strong's numbers
- Add position, parsing, and definition fields
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Achieves 100% interlinear coverage for all 31,102 verses in the KJV Bible.
Hebrew word-by-word data with transliterations, Strong's numbers, and
English translations fetched from Bible Hub.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
The interlinear data used "Song of Solomon" but KJV uses "Solomon's Song".
Renamed 117 verse keys to match.
Coverage now 99.8% (31049/31102 verses).
Only 1 Kings 22 (53 verses) remains missing - this is a known gap in the
upstream source data (tahmmee/interlinear_bibledata).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
All template filler ("The Hebrew text contains linguistic
nuances...") has been replaced with substantive commentary:
- Hebrew word studies throughout
- Egyptian gods targeted by plagues
- Passover/exodus typology pointing to Christ
- Tabernacle typology (each element = Christ)
- Golden calf crisis and covenant renewal
- God's 13 attributes (Exodus 34:6-7)
Every verse now has real theological analysis instead of
generic templates.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>