Commit Graph

799 Commits

Author SHA1 Message Date
kennethreitz 78efc7e2fc Add keyboard navigation to commentary and stories pages
- commentary.html: verse card navigation with up/down, enter to view
- stories_index.html: 2D grid navigation for story cards
- stories_kids_index.html: 2D grid navigation for kids story cards

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:57:47 -05:00
kennethreitz b61baf0d9e Add keyboard navigation to more pages
- resource_index.html: up/down for entries, enter to open
- story_detail.html: left/right for prev/next story, up for kids version
- story_kids.html: left/right for prev/next, down for adult version
- family_tree_ancestors.html: tree node navigation
- family_tree_descendants.html: tree node navigation
- family_tree_lineage.html: left/h to go back
- family_tree_search.html: search result navigation

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:56:58 -05:00
kennethreitz 657de68878 Add keyboard navigation to more pages
- Books page: 2D grid navigation (up/down moves by row)
- Fruits of Spirit: entry navigation
- Tetragrammaton: section navigation
- Verse of the Day: archive table navigation

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:54:07 -05:00
kennethreitz e7683ecd9e Add keyboard navigation to theological resource pages
- Biblical angels, covenants, festivals, maps, prophets
- Names of God, twelve apostles, women of the Bible
- Up/down/j/k to navigate entries, left/h to go back, Enter to open

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:53:04 -05:00
kennethreitz 98a899a59e Add keyboard navigation to interlinear chapter view
- Up/down navigates between verses
- Right arrow enters word-by-word mode within a verse
- Left/right moves between words, Enter expands word details
- Escape exits word mode or clears selection
- Left/right navigates chapters when no selection active

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:50:50 -05:00
kennethreitz fb932671b2 Add comprehensive keyboard navigation across entire site
- Add global navigation shortcuts: b (books), s (search), r (resources),
  t (topics), p (plans), f (family tree), c (concordance), v (verse of day),
  g (verse lookup), backtick (toggle sidebar)
- Replace keyboard help alert with styled HTML modal (? key)
- Add arrow/vim-style navigation to all major pages:
  - Topics, topic detail, reading plans, reading plan detail
  - Study guides, parables, search results, resources
  - Family tree pages (main, generation, person)
  - Strong's concordance index pages
  - Biblical timeline, interlinear landing
- Fix click-to-navigate on books and book pages (remove double-click requirement)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:46:41 -05:00
kennethreitz 51e8c9c239 Enhance homepage keyboard nav and add featured highlights
- Keyboard nav now includes both feature cards and explore links
- Proper 2D grid nav (3 cols for features, 4 cols for explore)
- Add yellow/gold featured highlight for Biblical Timeline and Genealogies
- Add selected state styling for explore links

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:36:15 -05:00
kennethreitz 4450584f7d Update homepage keyboard nav to 2D grid navigation
- ←/→ or h/l moves left/right between cards
- ↑/↓ or j/k moves up/down by row (3 cols on desktop, 1 on mobile)
- Respects responsive layout column count

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:34:52 -05:00
kennethreitz be3fd0c1cf Add keyboard navigation to homepage
- ↑/↓ or j/k to navigate feature cards with visual selection
- Enter to go to selected card, or /books if none selected
- / to focus search box (existing)
- Green highlight for selected card

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:33:45 -05:00
kennethreitz 2c5909f375 Add keyboard navigation to book page
- ↑/↓ or j/k to select chapters with visual highlight
- Enter to navigate to selected chapter
- ←/→ to navigate between adjacent books
- Click to select, click again to navigate
- Added nav hint showing keyboard shortcuts

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:31:53 -05:00
kennethreitz f91c81af5f Add keyboard navigation to books listing page
- ↑/↓ or j/k to select books
- Enter to navigate to selected book
- Click to select, click again to navigate
- Visual highlight with green border for selected book

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:30:55 -05:00
kennethreitz 1e901d7118 Initialize verse keyboard nav from URL hash
When navigating to a chapter with a verse hash (e.g., #verse-24),
keyboard navigation now starts from that verse instead of -1.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:29:42 -05:00
kennethreitz dd0a9d0f9b Add keyboard navigation for verses on chapter and verse pages
Chapter view:
- ↑/↓ or j/k to select verses with visual highlight
- Enter to navigate to selected verse detail page
- Click on verse to select it
- Updated nav help text with new shortcuts

Verse detail page:
- ← to go back to chapter view (scrolls to current verse)
- ↑/↓ or j/k to navigate between verses
- Maintains existing ←/→ for chapter navigation

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:28:56 -05:00
kennethreitz 408f5edf6a Enhance interactive family tree and Strong's derivation display
Interactive family tree improvements:
- Add hamburger menu toggle for sidebar with localStorage persistence
- Smooth tween animation when navigating between people
- Preserve zoom level during navigation
- Narrower node cards (120px) with adjusted font sizes
- Remove minus indicators, keep only + for expandable nodes
- Add info button (i) on each node to open sidebar
- Enhanced info panel with more fields: title, Kekulé number,
  siblings, children links, scripture references
- Add View Ancestors/Descendants links in sidebar
- Make ancestor nodes semi-transparent (60% opacity)
- Fix search input width with box-sizing

Strong's Concordance:
- Embed related Strong's entries in derivation section
- Show preview cards for referenced entries (e.g., H1 on H2 page)
- Display word, transliteration, and definition excerpt

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:25:42 -05:00
kennethreitz d2258af114 Show parents above selected person in interactive family tree
- Add buildBidirectionalTreeData function to build both ancestors and descendants
- Render ancestors above the selected person (flipped tree)
- Render descendants below as before
- Shows up to 2 generations of ancestors and configurable descendants
- Double-click any node to re-center the tree on that person

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:07:46 -05:00
kennethreitz ee054ff9db Fix interactive link on generation page to link to first person
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:05:54 -05:00
kennethreitz 0911184c26 Add dark mode support to interactive family tree page
- Dark backgrounds for controls, viewport, breadcrumb, sidebar
- Dark styling for buttons, dropdowns, inputs, and hints
- Proper contrast for all labels, text, and links
- Kekulé ancestor gradient preserved in dark mode

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:05:11 -05:00
kennethreitz e77846ae61 Reduce search box width on family tree page to 320px
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:04:40 -05:00
kennethreitz 863091647a Fix feature card link color in dark mode on family tree page
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:04:11 -05:00
kennethreitz 418e0603f2 Add dark mode support to resources page
- Dark backgrounds for resource cards
- Dark gradient for featured cards (preserves gold border)
- Proper contrast for titles, counts, and descriptions

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:03:35 -05:00
kennethreitz f32d7d34c8 Add dark mode support to family tree generation page
- Dark backgrounds for stats bar and person cards
- Dark styling for navigation links
- Proper contrast for dates, family links, and verse references
- Kekulé ancestor gradient preserved in dark mode

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:02:30 -05:00
kennethreitz ba9dea1984 Add dark mode support to family tree person page
- Dark backgrounds for main card, section cards, family cards, verse cards
- Dark styling for navigation, vitals, biography, and bottom nav
- Proper contrast for all text elements and links
- Kekulé ancestor gradient preserved in dark mode

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:02:07 -05:00
kennethreitz a7faccb90d Fix search dropdown text color in dark mode
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:01:36 -05:00
kennethreitz aeafa0a940 Disable browser autocomplete on family tree search
Add autocorrect, autocapitalize, spellcheck, and data-form-type
attributes to prevent Safari and other browsers from showing
autocomplete suggestions

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:01:14 -05:00
kennethreitz 8db1d8b9a5 Add dark mode support to family tree page
- Dark backgrounds for search, feature, stats, and section cards
- Dark styling for search input and dropdown
- Dark mode for generation cards and person cards
- Proper contrast for text, labels, and links

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 18:00:28 -05:00
kennethreitz a9533f38dc Limit search box width on family tree page
Set max-width: 400px on search card to prevent it from being too wide

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 17:59:29 -05:00
kennethreitz 8228341fcd Add missing pages to sitemap
Added 31 new URLs:
- /stories, /stories/kids
- Theology pages: anthropology, armor-of-god, beatitudes, bibliology,
  blood-in-scripture, christology, ecclesiology, eschatology, grace,
  hamartiology, i-am-statements, justification, kingdom-of-god,
  law-and-gospel, messianic-prophecies, miracles-of-jesus, names-of-christ,
  personifications, pneumatology, prayers-of-the-bible, providence,
  sanctification, soteriology, spirits-and-demons, ten-commandments,
  theology-proper, trinity, types-and-shadows, worship

Total sitemap URLs now: 46,745

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 17:31:35 -05:00
kennethreitz 9b28461ba5 Add Strong's Concordance entries to sitemap
- Replace /concordance with /strongs, /strongs/hebrew, /strongs/greek
- Add all 14,197 Strong's entries (H1-H8674, G1-G5624) to sitemap
- Sitemap now includes full Strong's coverage for SEO

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 17:24:06 -05:00
kennethreitz 826c6a1a95 Update homepage concordance link to Strong's Concordance
- Change /concordance to /strongs
- Update title and description to reflect Strong's features

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 17:15:44 -05:00
kennethreitz a1f2228c1a Add comprehensive Strong's Concordance test suite
62 new tests covering:
- Data loading and basic lookup (Hebrew/Greek entries)
- Helper functions (definition, word, transliteration, KJV usage)
- format_strongs_entry function
- Search functionality (both languages, limits, case-insensitive)
- Paginated listing (get_all_strongs)
- Web routes (index, search, entry, Hebrew/Greek indexes, pagination)
- API endpoints
- Edge cases (boundaries, common words, derivation links)
- Integration tests (search flow, navigation, breadcrumbs)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 17:11:19 -05:00
kennethreitz 4b1ccdd22c Update tests for Strong's Concordance (replaces old concordance)
- Replace TestConcordanceRoutes with TestStrongsRoutes
- Add tests for Strong's index, search, entry pages
- Add tests for Hebrew and Greek language indexes
- Add tests for pagination and invalid entries
- Update integration tests to use /strongs instead of /concordance

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 17:07:10 -05:00
kennethreitz 340901d7de Add paginated Hebrew and Greek Strong's indexes
- Add get_all_strongs() function for paginated entry listing
- Create /strongs/hebrew and /strongs/greek routes with pagination
- Add strongs_language_index.html template with entry cards
- Update main Strong's page with browse cards for each language
- Hebrew: 8,674 entries across 87 pages
- Greek: 5,523 entries across 56 pages

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 17:03:15 -05:00
kennethreitz 763874d5f9 Add verse occurrences with full text to Strong's entry pages
- Show all verses containing a Strong's number from interlinear data
- Display each verse as a card with reference, original word, and full text
- Highlight the translated English word in yellow
- Add dark mode support for highlighted text

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 17:00:27 -05:00
kennethreitz 202c88e6d9 Replace old concordance with Strong's Concordance
- Update sidebar link to point to /strongs
- Remove old /concordance route and template
- Update cache control settings

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:53:54 -05:00
kennethreitz 6da85ae7d0 Add italic styling to Strong's definition cards
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:52:44 -05:00
kennethreitz 52bb08bf70 Redesign Strong's entry page with card-style layout
- Large centered word card with original Hebrew/Greek
- Definition, KJV translations, and derivation in separate info cards
- Color-coded left borders for each card type
- Improved navigation with prev/next buttons
- Dark mode support
- Mobile responsive

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:52:15 -05:00
kennethreitz eca61cb1f3 Fix bible.books -> bible.get_books() in Strong's routes
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:51:21 -05:00
kennethreitz fc9045fd73 Fix Strong's derivation linkification
- Replace naive string replace with regex-based filter
- Only linkify actual Strong's references (G/H followed by digits)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:50:35 -05:00
kennethreitz 9088226ee3 Add Strong's Concordance lookup system
- Add Hebrew (8674 entries) and Greek (5523 entries) dictionaries from openscriptures/strongs
- Create strongs.py module for lookups and search
- Add /strongs web page for search and browsing
- Add /strongs/{number} page for individual entries
- Add /api/strongs and /api/strongs/{number} API endpoints
- Update interlinear templates to link to our Strong's pages instead of BibleHub

Data source: https://github.com/openscriptures/strongs (CC-BY-SA)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:49:47 -05:00
kennethreitz 3a2587d171 Default sidebar to open, fix duplicate breadcrumb in interlinear
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:38:37 -05:00
kennethreitz 796152151a Improve interlinear readability for native Hebrew/Greek readers
- Increase font sizes for Hebrew (2.2rem) and Greek (2rem) text
- Add proper RTL direction and font families for Hebrew
- Tighten word spacing for more natural reading flow
- Remove hover tooltips, keep click-to-expand details
- Increase English verse text size in chapter interlinear view
- Add is_old_testament to verse template context

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:25:46 -05:00
kennethreitz 941a9b877c Add optional interlinear data to verse API endpoint
GET /api/verse/{book}/{chapter}/{verse}?interlinear=true

Adds optional `interlinear` query parameter. When true, includes
word-by-word Hebrew/Greek data in the response:
- interlinear.available: boolean
- interlinear.words: array of word objects

Existing /api/interlinear/{book}/{chapter}/{verse} endpoint still works
for dedicated interlinear lookups.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:14:12 -05:00
kennethreitz b025280cf1 Add interlinear link to chapter view
- New Interlinear button next to PDF button
- Links to /book/{book}/chapter/{chapter}/interlinear
- Language/translation icon for the button

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:12:17 -05:00
kennethreitz 56e0030440 Add chapter interlinear view
New route: /book/{book}/chapter/{chapter}/interlinear

Shows all verses with word-by-word Hebrew/Greek analysis:
- Hebrew badge for OT, Greek badge for NT
- Same polished UI as verse page interlinear
- Click words for details, hover for definition preview
- Chapter navigation links
- Dark mode support
- Mobile bottom sheet for word details

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:10:54 -05:00
kennethreitz 59952e37bb Add dark mode support for interlinear section
- Hebrew/Greek letters now white in dark mode
- Dark backgrounds for hover and expanded states
- Dark popup card styling

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:07:06 -05:00
kennethreitz 8967bfedfc Increase tooltip font size
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:06:39 -05:00
kennethreitz 727dac45a4 Fix z-index for expanded word popup
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:05:46 -05:00
kennethreitz 9b03290405 Remove hint text from interlinear heading
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:03:19 -05:00
kennethreitz 834b844520 Always show interlinear section (no collapse)
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 16:02:13 -05:00
kennethreitz 362ee6d243 Add expand/collapse arrow to interlinear section
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 15:40:13 -05:00