Commit Graph

1322 Commits

Author SHA1 Message Date
kennethreitz 0525a37c5b Remove auto-linking to family tree on verse and chapter pages 2025-12-05 15:34:22 -05:00
kennethreitz 2216dedb19 Fix interlinear data for Song of Solomon (was Solomon's Song) 2025-12-05 15:20:15 -05:00
kennethreitz 1fa89c01a1 Increase verse text size on chapter view for mobile 2025-12-05 15:18:51 -05:00
kennethreitz d095b94ba5 Disable verse tooltips on mobile 2025-12-05 15:17:33 -05:00
kennethreitz 83bdc09cf2 Fix verse text size override on mobile with !important 2025-12-05 15:15:24 -05:00
kennethreitz d784504137 Increase verse text size on verse page for mobile 2025-12-05 15:14:28 -05:00
kennethreitz bf53489ab0 Increase text sizes on homepage for mobile 2025-12-05 15:12:51 -05:00
kennethreitz b53e04f2eb Reduce chapter nav button width on mobile 2025-12-05 15:11:02 -05:00
kennethreitz 3ebf27c0ed Comprehensive mobile UX improvements
- Auto-enable large font mode on mobile (base.html)
- Add swipe gestures for chapter navigation
- Improve verse number tap targets with background
- Make family tree pages full width on mobile
- Enhance homepage mobile layout with larger touch targets
- Increase text sizes and line heights for readability
- Remove sidenote tap target styling per user request

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 15:10:08 -05:00
kennethreitz 142875d3c7 Make chapter numbers bigger on mobile book view
Increased from 1.4rem to 2.2rem for better tap targets and readability.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 14:58:59 -05:00
kennethreitz 3ebf7d83b8 Fix verse number underline on mobile (border-bottom)
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 14:53:03 -05:00
kennethreitz 2ebddfbdc0 Improve mobile chapter reading experience
- Full width poetry verses on small screens (no 55% constraint)
- Larger verse text on mobile (1.2rem, 1.8 line-height)
- Remove underlines from verse numbers on mobile

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 14:51:44 -05:00
kennethreitz c28376e761 Add Pydantic schema for poetry_formatting.json
Validates:
- books dict contains only valid poetry books
- poetry_chapters are sorted and unique
- stanza_breaks have valid chapter keys with sorted verse lists

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 14:44:47 -05:00
kennethreitz 132bd657b2 Add poetry formatting for Job, Proverbs, Song of Solomon, Lamentations, Ecclesiastes
Expand poetry support beyond Psalms using stanza break data extracted from
World English Bible USFM source:

- Job: 40 poetry chapters (3-42), 133 stanza breaks
- Proverbs: 31 chapters, 54 stanza breaks
- Song of Solomon: 8 chapters, 17 stanza breaks
- Lamentations: 5 chapters, 86 stanza breaks
- Ecclesiastes: 4 poetry chapters (3, 10, 11, 12)

Updates:
- Restructure poetry_formatting.json to support multiple books
- Add is_poetry_chapter() for mixed prose/poetry books like Job
- Poetry verses wrap at 55% width to respect sidenote margin
- Stanza breaks use simple vertical spacing (3.5em)
- Section headings appear below stanza breaks when both present
- Update PDF templates for per-chapter poetry detection

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 14:42:52 -05:00
kennethreitz 52930be764 Add poetry formatting for Psalms with stanza breaks
- 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>
2025-12-05 14:21:27 -05:00
kennethreitz fa951a71cd Improve PDF exports: section headings, cross-ref sorting, remove links
- Add section headings to chapter and book PDF exports
- Sort cross-references numerically (3:7 before 3:14)
- Condense same-book refs in PDFs (Revelation 1:20; 1:16; 3:1)
- Remove link_names/link_verses filters from all PDF templates
- Add strip_links filter for word study notes in PDFs
- Bold cross-reference descriptions (e.g., "Parallel theme")

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 13:58:52 -05:00
kennethreitz 9d731c5953 Add action button styles to verse page
Matches the standard button styling from chapter page.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 12:57:26 -05:00
kennethreitz 65807c8f78 Move PDF button to top of verse page
Standard action button at top instead of share section at bottom.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 12:56:21 -05:00
kennethreitz 194c74880a Remove Copy Verse Text button, keep only Download PDF
Also removed unused copyToClipboard JS function.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 12:55:29 -05:00
kennethreitz 020872efaa Simplify verse page actions: Copy Verse Text, Download PDF
Removed Tweet button, renamed buttons for clarity, removed
section heading.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 12:54:44 -05:00
kennethreitz 8065e95bc8 Remove non-functional Facebook share button from verse page
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 12:54:21 -05:00
kennethreitz 5485e19b27 Add link_verses filter to 11 templates missing it
Fixed biblical_angels, biblical_covenants, biblical_festivals,
biblical_prophets, names_of_god, parables, parable_detail, and
their PDF variants to apply link_verses | link_names filters.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 12:51:30 -05:00
kennethreitz bc9b109d75 Add chapter-only verse linking (e.g., "Isaiah 53")
The link_verses filter now handles chapter references without
verse numbers, linking "Isaiah 53" to /book/Isaiah/chapter/53.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 12:48:50 -05:00
kennethreitz e71cdf2d5b Fix filter order: link_verses before link_names
The link_names filter was converting book names like "Daniel" to
family tree links before link_verses could match them as verse
references. Now link_verses runs first so "Daniel (8:16, 9:21)"
gets properly linked before "Daniel" becomes a person link.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 12:47:31 -05:00
kennethreitz 34e715fb65 Add verse linking for parenthetical refs, fix resource sidenotes
- link_verses filter now handles "Daniel (8:16, 9:21)" format
- Reduced resource detail column width to 55% for sidenote room
- Removed right padding on article to prevent sidenote cutoff

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 12:43:43 -05:00
kennethreitz d6f0b9597e Improve cross-ref ordering and show up to 5 refs
- Sort cross-ref groups by theological priority (Prophecy/Covenant
  first, generic "Parallel theme" last)
- Show up to 5 refs without expansion (was 3)
- Show all if 6 or fewer to avoid "+1"

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 12:39:06 -05:00
kennethreitz 9c6b5b9b76 Prioritize same-book cross-refs first
Cross-refs from the current book now appear first, followed by
other books in canonical order. E.g., viewing John shows John
refs first, then Genesis → Revelation.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 12:34:45 -05:00
kennethreitz ae4053f1e3 Sort cross-refs in canonical book order (Genesis → Revelation)
Instead of alphabetical sorting, cross-references now appear in
biblical book order. Isaiah refs come before Matthew refs, which
come before Revelation refs.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 12:34:16 -05:00
kennethreitz 98630f93ba Sort cross-refs by book before condensing display
Groups same-book references together so instead of jumping like
"Isaiah 44:6, Revelation 22:13, Isaiah 41:4" it shows
"Isaiah 44:6, 41:4, Revelation 22:13".

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 12:31:05 -05:00
kennethreitz d303d70f02 Add section headings for all 66 books of the Bible
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>
2025-12-05 09:37:46 -05:00
kennethreitz 3bbe683a60 Condense cross-refs: show book only when it changes
Instead of "Revelation 1:20; Revelation 1:16; Revelation 3:7"
now shows "Revelation 1:20, 1:16, 3:7" - much cleaner.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:46:49 -05:00
kennethreitz e659b0dadc Lower cross-ref expand threshold to 120 chars
More cross-refs will auto-expand now with the lower threshold.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:44:33 -05:00
kennethreitz c13456d0e4 Auto-expand cross-refs based on next verse length
If the next verse is 150+ characters, there's plenty of margin space
for the sidenote, so auto-expand cross-refs. If next verse is short,
keep collapsed to avoid overflow.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:40:51 -05:00
kennethreitz 5bd0f7556b Restore cross-reference grouping with collapse behavior
Keep group descriptions (Prophecy:, Related:, etc.) while still
showing first 3-4 refs collapsed with "+N" expand for more.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:39:31 -05:00
kennethreitz 31d5756240 Show all cross-refs if 4 or fewer, avoid "+1"
If there are 4 or fewer refs, show them all without expand.
Only use the collapsed "+N" pattern when there are 5+ refs.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:38:20 -05:00
kennethreitz 97877b22d6 Show first 3 cross-refs collapsed, expand for more
Cross-references now show first 3 refs by default with "+N" indicator.
Clicking expands to show all references. Simplifies the template by
flattening grouped refs into a single list.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:37:17 -05:00
kennethreitz a65eb4a028 Expand word studies only on first occurrence, collapse repeats
First time a theological term appears in a chapter, show it expanded
so readers see the definition. Subsequent occurrences of the same word
are collapsed since the reader already knows the meaning.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:35:32 -05:00
kennethreitz ab160b4abd Filter word studies to important theological terms only
Limit word study sidenotes to ~40 key theological terms like god, lord,
salvation, grace, covenant, etc. Excludes common words like walk, call,
dwell, bread that don't warrant study annotations on every occurrence.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:34:13 -05:00
kennethreitz b1c558808a Simplify: expand cross-refs, collapse word studies
Removed complex adaptive logic. Simple rules:
- Cross-refs: always expanded
- Word studies: always collapsed (click to expand)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:31:29 -05:00
kennethreitz 047bbd9b8c Link verse refs to chapter view with anchor, not verse view
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:29:07 -05:00
kennethreitz 34c486af53 Prefer word studies over cross-refs for expansion
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:26:21 -05:00
kennethreitz b5ddc7c50d Smarter sidenote expand/collapse algorithm
- Track consecutive expansions, force collapse after 2 in a row
- If verse has both word study and xref, only expand xref
- Prefer cross-refs over word studies (more useful for study)
- Creates visual rhythm instead of wall of expanded content

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:24:57 -05:00
kennethreitz 2f9828b960 Always expand sidenotes on first verse of chapter
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:23:31 -05:00
kennethreitz 042ed26ccf Factor verse length into expand/collapse decisions
Long verses have more margin room, so expand more freely (buffer=1).
Short verses have less margin room, need more clearance (buffer=3).

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:22:35 -05:00
kennethreitz 2bb5305bd3 Use lookahead for sidenote expand/collapse decisions
Two-pass approach: first collect all sidenotes, then decide expand
based on looking both ahead and behind. Expands when there's 2 verses
of space on both sides, collapses when crowded.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:21:24 -05:00
kennethreitz ea454723eb Auto-expand word studies when margin isn't crowded
Word studies now auto-expand when there's room (2+ verses since last
word study), matching cross-ref behavior.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:19:39 -05:00
kennethreitz 4802a48817 Set cross-ref cooldown to 2 verses
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:15:43 -05:00
kennethreitz 2eb3f71d76 Expand cross-refs most of the time, collapse only when back-to-back
Reduced cooldown from 3 verses to 1 - only collapse when consecutive
verses both have cross-refs.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:15:03 -05:00
kennethreitz 29adf18818 Auto-expand cross-refs when not crowded, collapse when cramped
Cross-references now auto-expand when there's room (3+ verses since
last xref), but stay collapsed when verses are close together to
prevent margin overload.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:14:19 -05:00
kennethreitz db0fb31fb3 Add 3-verse cooldown for cross-references
When verses are close together (within 3 verses), show condensed
"+N refs" instead of full cross-reference groups to prevent
margin overload.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-05 08:13:25 -05:00