Commit Graph

996 Commits

Author SHA1 Message Date
kennethreitz efab66dcdc psalms improvements 2025-12-02 01:21:55 -05:00
kennethreitz e2905cf9fe Redesign sidebar navigation and add current page highlighting
- Cleaner link styling with rounded corners and hover backgrounds
- CSS triangle expand arrows instead of text characters
- Refined typography, spacing, and search box styling
- Add 'n' key to activate sidebar navigation (j/k to navigate, Enter to select)
- Highlight current page in green on sidebar links

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 00:45:38 -05:00
kennethreitz 6a9cebae22 Improve keyboard navigation, PDFs, and add non-writing prophets
- Add KJVNav.initSimpleNav() for DRY keyboard navigation across site
- Fix broken keyboard nav on 10+ resource pages (orphaned JS code)
- Left arrow on chapters now does browser back
- Add non-writing prophets: Moses, Samuel, Nathan, Elijah, Elisha
- Redesign chapter PDFs with glossary, cross-refs, book intro
- Style sidenotes as inline notes in all PDFs (fix checkbox squares)
- More liberal word studies in PDF output (for_pdf parameter)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 00:28:25 -05:00
kennethreitz 7606fa8c3a Remove smooth scrolling animation from all keyboard navigation
Changed scrollIntoView behavior from 'smooth' to 'auto' across all
templates for instant, non-animated navigation between selections.

Affected ~75 instances across 50+ template files.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 00:02:24 -05:00
kennethreitz d0a53868f7 Add keyboard navigation to about page
- j/k or arrows to navigate between paragraphs
- Space to read selected paragraph aloud
- Escape to clear selection
- Uses KJVNav helper for viewport-aware navigation
- Green outline selection style matching site design

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:59:35 -05:00
kennethreitz 28f37f68c3 Fix dark mode conflict when OS is dark but site theme is light
- Wrap prefers-color-scheme dark styles with html:not([data-theme="light"])
- Fixes interlinear text being white on yellowish background
- Updated verse.html, chapter_interlinear.html, tufte.css, base.html,
  and family-tree-expansions.css

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:51:57 -05:00
kennethreitz 2163d56185 Add !important to mobile sidenote display rules
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:41:22 -05:00
kennethreitz f61a78a6c5 Hide sidenotes on mobile by default, expand on click
- Add mobile media query to hide sidenotes by default
- Show sidenotes when checkbox is clicked (tap on number)
- Style expanded sidenotes with background and border for clarity

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:33:49 -05:00
kennethreitz a4f306a7c9 Remove hidden page notice from stats page
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:26:45 -05:00
kennethreitz f436560701 Add /api/stats endpoint for site statistics
- Add cached _get_site_stats() function with comprehensive metrics
- Create GET /api/stats endpoint with OpenAPI documentation
- Include bible, commentary, cross-references, red letter, study resources,
  language tools, and data statistics
- Add 8 tests for the new endpoint

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:23:04 -05:00
kennethreitz 16a684d714 Add About KJV Study link to homepage footer
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 23:19:37 -05:00
kennethreitz b520698453 Pass books to about page templates for sidebar rendering
- Add books to /about route
- Add books to /about/stats route
- Add books to /about/cross-references route

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 19:30:14 -05:00
kennethreitz 9549499d79 Remove non-working keyboard nav from about page 2025-12-01 19:12:20 -05:00
kennethreitz b11f6e9297 Add padding-bottom to asterism to prevent cutoff 2025-12-01 19:06:04 -05:00
kennethreitz 513577c143 Adjust asterism margin-top to -0.5rem 2025-12-01 19:05:37 -05:00
kennethreitz c26c603feb Add bottom margin to asterism in nav 2025-12-01 19:05:16 -05:00
kennethreitz 1855b3faca Make asterism smaller in nav 2025-12-01 19:04:55 -05:00
kennethreitz 0f11085d4e Move asterism directly below About KJV Study link 2025-12-01 19:04:35 -05:00
kennethreitz 97ff899a1f Remove newthought from Privacy section 2025-12-01 19:02:37 -05:00
kennethreitz 03eeeaabb5 Reduce newthought span to just 'KJV Study' in Data & Sources 2025-12-01 19:02:10 -05:00
kennethreitz e011a2789e Remove newthought from Free & Open Source section 2025-12-01 19:01:32 -05:00
kennethreitz 685a4103ea Add creedal newthought styling to theological declarations
- We confess, We worship, We affirm in small-caps
- Gives confessional, creedal feel to theological section

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 19:01:11 -05:00
kennethreitz cf8730a9a4 Restructure about page opening with creator intro
- Open with Kenneth Reitz creation story
- Merge creator section into opening paragraph
- Remove separate Creator section and TOC link
- Add no-arrow class to hide external link arrow on name

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:58:28 -05:00
kennethreitz f016a939fd Polish about page with newthought lead-ins
- Add Tufte-style newthought small-caps to section openings
- Remove analytics opt-out mention from privacy section
- Remove verbose paragraph from creator section

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:56:20 -05:00
kennethreitz 45659aff00 Move red letters toggle from nav to keyboard shortcut
- Remove "Disable Red Letters" link from sidebar navigation
- Add Shift+R keyboard shortcut to toggle red letters
- Update keyboard help modal with new shortcut

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:47:48 -05:00
kennethreitz f12ea31a7c Add tests for about pages
- TestAboutPages: 8 tests for main about page (TOC, sidenotes, keyboard nav, etc.)
- TestAboutStatsPage: 5 tests for stats page
- TestAboutCommentaryIndex: 4 tests for commentary index
- TestAboutCrossReferencesIndex: 4 tests for cross-references index

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:43:31 -05:00
kennethreitz d221aa95a3 Fix verse link regex matching 'As Matthew' as book name 2025-12-01 18:40:41 -05:00
kennethreitz 825656e6f9 Enhance About page with sidenotes, TOC, and keyboard navigation
- Add Tufte-style sidenotes with theological depth
- Add table of contents with two-column layout
- Implement j/k keyboard navigation using KJVNav pattern
- Promote h3 headings to h2 for cleaner hierarchy
- Remove "Our Purpose" heading, make intro text flow naturally

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:39:11 -05:00
kennethreitz 92839d36fc Completely rewrite About page with richer content and better prose
Major improvements throughout:

- Our Purpose: Establishes mission to serve the church with scholarly,
  theologically faithful resources; emphasizes accessibility
- Free & Open Source: Compelling case for open source with Matthew 10:8
  "Freely ye have received, freely give"
- Data & Sources: Rich historical context on KJV (47 scholars, 6 committees,
  1769 Blayney Edition), Treasury of Scripture Knowledge, Strong's (1890)
- Creator: Concise, humble, links to GitHub for engagement
- Privacy: Powerful statement - "Your study of Scripture is between you
  and God" and "The Word of God is not for sale"
- Explore Further: Clean links to all major resources
- Changed closing quote to John 1:1 (ties to Logos theology section)

Removed redundant sections, tightened prose, maintained theological
depth while improving readability. Page now has consistent scholarly
voice throughout.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:31:06 -05:00
kennethreitz 4432a7f096 Rewrite theological section with Hebrew/Greek and deeper content
After reviewing the actual commentary (Genesis 1:1, John 1:1, Isaiah 53:5,
Psalm 119:105, Matthew 28:19), rewrote the about page theology section
to accurately reflect the rich content found in the verse analysis:

- Added Hebrew/Greek terminology with original script (θεόπνευστος,
  דָּבָר, מְחֹלָל, λόγος, בְּרֵאשִׁית, etc.)
- Strong inerrancy & sufficiency claims matching commentary
- Explicit substitutionary atonement doctrine from Isaiah 53
- Trinitarian theology drawn from Matthew 28:19 commentary
- Christ's eternal deity from John 1:1 analysis
- Christocentric interpretation methodology
- Rejects rationalistic liberalism and mystical subjectivism
- Ends with Soli Deo Gloria

This now accurately represents the scholarly depth and theological
commitments found throughout the verse-by-verse commentary.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:28:03 -05:00
kennethreitz 0e425335fa Align theological claims with actual commentary content
After reviewing the commentary, adjusted the about page to be more
conservative and match what's actually taught in the verse analysis:

- Removed "and believer" from creator description (too performative)
- Scaled back from explicit Reformed distinctives (TULIP, covenant theology)
- Kept core orthodox doctrines: biblical authority, Trinity, salvation
  by grace through faith alone, Christ-centered interpretation
- Commentary emphasizes grace/faith but doesn't engage deeply with
  election, particular redemption, or other Reformed distinctives

Now the about page accurately represents the theological content
visitors will find in the actual commentary.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:21:05 -05:00
kennethreitz 3352d23476 Make h3 headings bold and condense TULIP section
- Added font-weight: bold to h3 styling for better hierarchy
- Condensed the five points of TULIP into a single paragraph
- Removed explicit labeling (Total Depravity, Unconditional Election, etc.)
- Kept all the theological content but made it less overt/formulaic

Still clearly Reformed but not as pedagogical in presentation.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:17:07 -05:00
kennethreitz d880c04f97 Add link to Kenneth Reitz's personal website
Links 'Kenneth Reitz' to kennethreitz.org in the Creator section.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:15:50 -05:00
kennethreitz f0933b3bac Change navigation link text to 'About KJV Study'
More descriptive than just 'About' - makes it clear what the
link is about when viewing the navigation.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:15:07 -05:00
kennethreitz 9d383fa455 Reorder heading to 'Free & Open Source'
Changed from "Open Source & Free" to "Free & Open Source"
to emphasize that the resource is free first.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:14:25 -05:00
kennethreitz 2ba1d28efd Add About link to navigation and breadcrumbs to all about pages
- Added About link at bottom of sidebar navigation
- Added breadcrumbs to /about, /about/stats, /about/commentary, /about/cross-references
- Removed emoji from "Open Source & Free" heading on about page

All about-related pages now have proper navigation structure.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:13:45 -05:00
kennethreitz 71eb152aa2 Simplify technical details section on about page
Condensed the extensive technical details into a single sentence
with link to GitHub repository. Users interested in architecture,
tech stack, and development details can find that information in
the README.

Keeps the about page focused on mission and theology rather than
implementation details.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:11:13 -05:00
kennethreitz 24204652fe Strengthen theological convictions section on about page
Rewrote the Theological Approach section to be more robustly theological:
- Explicit affirmation of Sola Scriptura
- Clear teaching on God's absolute sovereignty
- Full explanation of the five points of grace (TULIP)
- Covenant theology framework
- Christ-centered hermeneutics
- Detailed interpretive methodology

The language is now more theologically precise and confessional while
remaining grounded in Scripture. Reformed convictions are clearly
articulated through biblical categories without using denominational labels.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:10:29 -05:00
kennethreitz feb40f5ce8 Reorganize stats and indexes under /about/ namespace
Changed URLs:
- /stats → /about/stats
- /indexes/commentary → /about/commentary
- /indexes/cross-references → /about/cross-references

Creates a cleaner URL structure with all informational/meta pages
grouped under /about/.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:08:31 -05:00
kennethreitz 2343fcf923 Move commentary and cross-references indexes to /indexes/ namespace
Changed URLs from:
- /commentary → /indexes/commentary
- /cross-references → /indexes/cross-references

Updated stats page links to use new URLs. Old routes removed.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:06:58 -05:00
kennethreitz 560f3b9e2a Add table of contents to commentary and cross-references indexes
Added a TOC at the top of both index pages with:
- Grid layout showing all books with commentary/cross-references
- Anchor links to jump directly to each book section
- Hover effects for better UX
- Responsive design that adapts to screen width

Makes it much easier to navigate to a specific book without scrolling.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 18:02:02 -05:00
kennethreitz edbe4a2624 Sort commentary and cross-references indexes in biblical order
Changed both index pages to display books in biblical order (OT then NT)
instead of alphabetical order. Now starts with Genesis and ends with
Revelation, matching the order readers expect.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 17:56:19 -05:00
kennethreitz 048b0d331a Fix URL encoding for book names with spaces in index pages
Updated both commentary and cross-references index templates to use:
- Proper URL format: /book/{book}/chapter/{chapter}/verse/{verse}
- urlencode filter to handle spaces in book names (e.g., "1 Chronicles")

Previously used incorrect format /book/{book}/{chapter}:{verse} which
caused 422 errors for books with spaces in their names.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 17:54:55 -05:00
kennethreitz cbe1ec7f0d Add cross-references index page at /cross-references
New browseable index showing all 24,900 verses with cross-references:

Features:
- Organized by book and chapter
- Shows reference count per verse (blue badge)
- Links to individual verse pages
- Coverage statistics (80% of Bible)
- 120,858 total cross-references
- Clean, scannable interface

Route: GET /cross-references
Template: cross_references_index.html

Updates to stats page:
- Link to /commentary index
- Link to /cross-references index
- Link to /strongs concordance

This completes the major indexes for discovering
content - users can now browse all commentary,
cross-references, and Strong's entries systematically.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 17:50:08 -05:00
kennethreitz 4e827a1b6b Add commentary index page at /commentary
New browseable index showing all 12,330 verses with commentary:

Features:
- Organized by book and chapter
- Shows verse counts per chapter
- Links to individual verse pages
- Coverage statistics (39.6% of Bible)
- Clean, scannable interface

Route: GET /commentary
Template: commentary_index.html

Also linked from /stats page for easy discovery.

This gives users a systematic way to browse all
commentary content instead of discovering it
verse-by-verse.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 17:44:09 -05:00
kennethreitz 5e650890c7 Add comprehensive /about page
Detailed information about KJV Study including:

- What KJV Study is and key statistics
- Open source section (prominent) with GitHub link
- Creator information
- Theological approach and convictions
- Data sources and attributions
- Technical architecture details
- Contributing guidelines
- Privacy policy and analytics opt-out
- Resource links including /stats page

Highlights:
- Emphasizes free and open source nature
- Links to GitHub repository
- Explains conservative evangelical theological stance
- Credits all data sources (TSK, Strong's, etc.)
- Clear privacy commitments
- Encourages community contributions

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 17:41:18 -05:00
kennethreitz 90abb8347f Add comprehensive /stats page with site metrics
Hidden statistics page (not linked in navigation) displaying:

Bible Text Statistics:
- 31,102 verses across 66 books
- 1,189 chapters
- 783,137 words total
- Averages per verse and chapter

Verse Commentary:
- 66 books with commentary files
- 12,330 verses covered (39.6% of Bible)
- 3.4M words of theological analysis
- Avg 278 words per commented verse

Cross-References:
- 66 book files
- 24,900 verses with cross-references (80% coverage)
- 120,858 total references
- Avg 4.9 references per verse

Language Tools:
- 8,674 Hebrew Strong's entries
- 5,624 Greek Strong's entries
- 14,298 total concordance entries
- 12 MB interlinear data (compressed)

Study Resources:
- 36 study guides
- 36 topics
- 39 resource files
- 24 Bible stories
- 127 biographies
- 6 reading plans

Technical Data:
- 361 total JSON files
- 58.1 MB total data size
- 150+ book abbreviations

Access via /stats (hidden, not linked in nav)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 17:37:40 -05:00
kennethreitz d439acbdea Add hidden analytics opt-out feature via ?kr=1 parameter
Users can now disable analytics by visiting homepage with ?kr=1:
- Detects ?kr=1 parameter and sets localStorage + cookie
- Analytics script checks both before loading
- Persists across sessions (10 year cookie + localStorage)
- ?kr=0 re-enables analytics if needed
- Clean URL redirect after setting preference
- Fully client-side, privacy-focused implementation

Technical details:
- localStorage primary (instant, no server traffic)
- Cookie fallback (315360000s = 10 years)
- window.analyticsDisabled flag for runtime checks
- Gauges analytics respects opt-out flag

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 17:27:43 -05:00
kennethreitz 387b2eee13 Add verse commentary for Habakkuk and Haggai, update data README
- Add habakkuk.json with 5 key verses (1:2, 1:5, 2:4, 3:17-18)
- Add haggai.json with 5 key verses (1:4, 1:6, 2:4, 2:9)
- Now have complete 66/66 books with verse commentary
- Update README.md with accurate file counts and sizes
  - 359 JSON files total (was: 107)
  - 58 MB total size (was: 2.2 MB)
  - Document new Strong's Concordance and schemas
  - Fix verse commentary coverage details

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-01 17:25:16 -05:00
kennethreitz 2f7ff6cd83 Update README.md with comprehensive data overview and new Strong's Concordance details 2025-12-01 17:17:29 -05:00