Commit Graph

547 Commits

Author SHA1 Message Date
kennethreitz d25db83ea0 Fix markdown rendering in Introduction and Historical Context sections
Apply markdown filter to Introduction and Historical Context sections
to properly render bold text and other markdown formatting.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 16:00:47 -05:00
kennethreitz 9388c8733c Fix markdown rendering in book Literary Style section
Apply markdown filter to Literary Style section to properly render
bold text and other markdown formatting. Makes it consistent with
other sections like Theological Significance.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 16:00:01 -05:00
kennethreitz d15d2309e8 Add 10 new Bible story collections and reorganize in chronological order
Add comprehensive story files for missing Bible narratives:
- Job's Suffering (7 stories)
- Samson's Strength (5 stories)
- Ruth & Redemption (4 stories)
- Samuel the Prophet (8 stories)
- Jonah & God's Mercy (4 stories)
- Daniel & Friends (6 stories)
- Esther & Deliverance (5 stories)
- Nehemiah Rebuilds (7 stories)
- Paul's Missions (5 stories)
- Revelation & Hope (10 stories)

Reorganize all story files in biblical chronological order:
- Old Testament stories: 01-15 (Creation through Nehemiah)
- New Testament stories: 16-23 (Jesus Birth through Revelation)
- Thematic collection: 24 (Heroes of Faith)

Each story includes comprehensive adult narratives (400-600 words) and
engaging kids narratives (200-400 words), with proper themes, verses,
and character lists. All content is theologically rich and biblically
faithful.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 15:41:10 -05:00
kennethreitz 855565997d Fix large font on chapter links in other sections
Scope the 1.8rem font-size rule to only the .chapters-section
so parenthetical chapter references in other sections don't
get enlarged.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 15:14:55 -05:00
kennethreitz 8402e3d948 Fix markdown filter to always wrap content in p tags
Previously single-paragraph content was returned unwrapped,
causing missing paragraph styling on sections like "Christ in Acts".

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 15:12:19 -05:00
kennethreitz 9388de679f Add support for cross-book chapter references without verses
Handle patterns like "Hebrews 5-7" (chapter range) and "Hebrews 11"
(single chapter) that don't include verse numbers (no colon).

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 15:10:07 -05:00
kennethreitz 49fb98c3ee Fix single verse links to use /verse/ path for tooltip support
Single verses now use /book/{book}/chapter/{ch}/verse/{v} format
which matches the tooltip parser pattern in base.html.
Verse ranges continue to use #verse-{start}-{end} anchor format.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 15:09:00 -05:00
kennethreitz 3ae1182266 Fix cross-book verse range inheritance in parentheticals
Track both currentBook and currentChapter context so abbreviated
ranges like "45-49" in "(1 Corinthians 15:21-22, 45-49)" correctly
inherit the book (1 Corinthians) and chapter (15) from the preceding
reference.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 15:06:56 -05:00
kennethreitz 9aca368cb2 Improve verse reference linking to handle complex patterns
- Add cross-book reference support (e.g., Romans 5:12-21)
- Handle comma-separated verse ranges with inherited chapter context
  (e.g., 27:27-29, 39-40 where 39-40 inherits chapter 27)
- Support semicolon-separated references (e.g., 48:15-16; 49:1-27)
- Fix verse range linking to use #verse-start-end anchor format

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 15:05:22 -05:00
kennethreitz cd2f83d9c1 Expand Pentateuch book introductions with rich theological content
- Genesis, Exodus, Leviticus, Numbers, Deuteronomy fully expanded
- Each book now includes: multi-paragraph introductions, key themes with
  descriptions, key verses with significance, detailed outlines, historical
  context, literary style, theological significance, Christ in book,
  relationship to NT, and practical application
- Update book.html template to handle new data structure
- Add markdown filter for bold text conversion
- Template now supports both old and new data formats

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 14:41:35 -05:00
kennethreitz cf212062f7 Add individual book introduction JSON files for all 66 books
- Create books.py loader module with caching for book data
- Add JSON files for each book with introduction, themes, key verses,
  outline, historical context, literary style, Christ in book, and
  practical application sections
- Update API routes to include book metadata and introduction data
- Update book.html template to display rich book content
- Template falls back to commentary data when book_intro unavailable

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 14:26:11 -05:00
kennethreitz c77b13c2b8 Clean up homepage and improve API error handling
- Remove unused dropdown CSS and JS from homepage (~200 lines)
- Fix API error handling to return 404 instead of 500 for invalid inputs
- Add book existence and chapter/verse validation
- Add 10 tests for universal search endpoint (110 total tests now)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 13:15:38 -05:00
kennethreitz e763e8022c Enhance universal search with synonyms and study guides
- Add 24 individual study guides as searchable items
- Add 80+ theological term synonyms (jesus→Christology, demons→Spirits)
- Add 10 biblical figures linking to family tree
- Add 27 Bible book synonyms (revelations→Revelation, song of songs)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 11:17:45 -05:00
kennethreitz e613c97a88 Disable Safari/macOS autocomplete on search inputs
Add autocorrect=off, autocapitalize=off, spellcheck=false to all search
inputs to prevent Safari's autocomplete suggestions from interfering.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 11:12:54 -05:00
kennethreitz 0c03e06970 Fix duplicate genealogy entry in search results 2025-11-26 11:11:41 -05:00
kennethreitz b3f82bb3df Reorder search dropdown categories and add resources
- Move verses to end of dropdown results (after topics, resources, stories, plans)
- Add resources search (theological studies, biblical figures, tools)
- Include: Trinity, Christology, Soteriology, angels, prophets, parables,
  covenants, apostles, timeline, family tree, interlinear, concordance, etc.
- Update all search dropdowns: sidebar, homepage, search page

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 11:11:18 -05:00
kennethreitz bbda34e223 Enhance search dropdowns across site
- Limit stories page dropdown to only show stories (remove verse refs, topics)
- Add universal search dropdown to /search page
- Add stories-only dropdown to kids stories page
- Disable verse tooltips on all search dropdown links
- Fix cursor style on dropdown links (no help cursor)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 11:07:39 -05:00
kennethreitz 0c355850ce Add dropdown search to stories page
- Add search dropdown with matching stories, verse references, and topics
- Keep existing filter-in-place functionality
- Move search below categories section
- Support keyboard navigation (arrow keys, Enter, Escape)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 11:01:46 -05:00
kennethreitz 6df0ecda1f Add universal search with dropdown to sidebar and homepage
- Add /api/universal-search endpoint that searches across books, verses,
  topics, stories, and reading plans
- Update sidebar search with live dropdown showing categorized results
- Add same dropdown functionality to homepage search
- Support smart verse reference parsing (e.g., "gen 1:1" → Genesis 1:1)
- Include keyboard navigation (arrow keys, Enter, Escape)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 10:59:18 -05:00
kennethreitz c03af4ed28 Convert interlinear data from gzipped Python to gzipped JSON
- Move interlinear_data.py.gz to data/interlinear.json.gz
- Simplify loader to read JSON directly (no more Python parsing)
- Reduced file size from 13.51 MB to 12.37 MB
- 31,031 verses of Hebrew/Greek interlinear data

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 10:47:16 -05:00
kennethreitz bef2da8129 Remove duplicate stories from new categories
- Removed Jonah and Daniel from Heroes of Faith (already in Prophets)
- Removed Still Small Voice from Elijah & Elisha (already in Kings)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 10:45:10 -05:00
kennethreitz 9cc0faf006 Remove duplicate Water into Wine story
Already exists in 08_jesus_ministry.json

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 10:43:01 -05:00
kennethreitz 3a4862a2f9 Remove 'What We Learn' section from kids story templates
Simplifies the kids story pages by removing the themes list section
from both the web view and PDF templates.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 10:41:51 -05:00
kennethreitz 01b6f9a9fa Add Miracles of Jesus and Elijah & Elisha story categories
New stories added:

Miracles of Jesus (8 stories):
- Water into Wine, Calms the Storm, Feeds 5000
- Walks on Water, Heals Blind Man, Raises Lazarus
- Heals Ten Lepers, Heals Paralyzed Man

Elijah & Elisha (7 stories):
- Elijah and the Ravens, Widow's Oil
- Mount Carmel, Still Small Voice, Taken to Heaven
- Elisha and Widow's Oil, Naaman Healed

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 10:41:27 -05:00
kennethreitz 105df4a18e Move embedded Python data to JSON files
- Move data from Python modules to JSON in data/ directory:
  - verse_collections.json, topics.json, biographies.json
  - cross_references.json, reading_plans.json, resources.json
- Update Python modules to load from JSON at import
- Remove intermediary Python data files from data/
- Move stories.py loader to main module directory
- Add Heroes of Faith Bible stories (Job, Ruth, Esther, Jonah, Daniel, Shadrach/Meshach/Abednego)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 10:30:31 -05:00
kennethreitz 20190dc549 Add biblical timeline PDF download 2025-11-26 01:50:15 -05:00
kennethreitz 03fa79833c Add Tetragrammaton PDF export 2025-11-26 01:43:55 -05:00
kennethreitz 776e39370e Add global resource and reading plan PDF exports 2025-11-26 01:38:55 -05:00
kennethreitz 87b31f7b6a Move chapter PDF button to header 2025-11-26 01:22:06 -05:00
kennethreitz 1156fb68e1 silly 2025-11-26 01:16:45 -05:00
kennethreitz 0a5c06bbf4 Fix WeasyPrint system dependencies in Dockerfile
Use correct package names for Debian Trixie:
- libpango-1.0-0 instead of libpango1.0-0
- Add libharfbuzz0b and libpangoft2-1.0-0

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 00:27:10 -05:00
kennethreitz ffd9e8c187 Add PDF export for stories using WeasyPrint
- Add WeasyPrint dependency and system libs to Docker image
- Create PDF templates for adult and kids stories
- Add /stories/{slug}/pdf and /stories/{slug}/kids/pdf routes
- Add Download PDF button to story pages
- Add stories API endpoints: /api/stories and /api/stories/{slug}
- Gracefully handle missing WeasyPrint system libraries

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 00:26:25 -05:00
kennethreitz 608989347b Improve story text layout with Tufte-style typography
- Add newthought styling for first paragraph (small caps leading words)
- Add * * * divider between header/meta and narrative
- Add print styles for cleaner PDF output
- Applies to both adult and kids story templates

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 00:19:23 -05:00
kennethreitz 06be7a6d3c Add Jesus ministry stories (08_jesus_ministry.json)
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 00:11:18 -05:00
kennethreitz 7bd15f9698 Add kids stories index page at /stories/kids
- Playful colorful design matching individual kids story pages
- TOC grid with category links
- Search functionality
- Card-based grid with character badges and theme badges
- Links between adult and kids story indexes

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 00:10:19 -05:00
kennethreitz 2da1eb7846 Fix scripture links to use proper anchor syntax for verse ranges
Update story templates to link to chapter pages with #verse-X-Y anchors
instead of individual verse pages. This properly scrolls to and highlights
verse ranges like Judges 16:23-31.

Also adds more story JSON files (prophets, Jesus birth, parables, passion, acts).

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 00:07:18 -05:00
kennethreitz be768c7ca5 Add Bible Stories to sidebar navigation
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 23:53:50 -05:00
kennethreitz 23ce33e3b0 Add Bible Stories feature with adult and kids versions
- Add stories.py loader for JSON story files
- Add routes for /stories, /stories/{slug}, /stories/{slug}/kids
- Add templates: stories_index, story_detail, story_kids
- Include 32 stories across 4 categories (creation, patriarchs, exodus, conquest/judges)
- Add Bible Stories to homepage feature grid and explore links

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 23:53:03 -05:00
kennethreitz a41e2d2d9e Update biblical timeline dates to revised chronology
Patriarchs: Abraham 2068 BC, Isaac 2067 BC, Jacob 2007 BC, Joseph 1877 BC
Exodus: Bondage 1887-1447 BC, Exodus 1447 BC, Sinai 1447 BC
Conquest: Canaan 1407 BC, Judges 1367-1047 BC
Kingdom: Saul 1047 BC, David 1010 BC, Temple 967 BC, Division 931 BC

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 23:43:17 -05:00
kennethreitz 8546e58713 Add TOC to study guides and new Spirits & Demons guide
- Add table of contents navigation to study guide detail pages
- New study guide covering biblical teaching on demons and spiritual warfare:
  - The Reality of Evil Spirits
  - Satan: The Adversary
  - Demon Possession in the Gospels (Legion, etc.)
  - Christ's Victory Over Demons
  - Spiritual Warfare
  - Testing the Spirits
  - Demons' Final Doom

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 22:41:10 -05:00
kennethreitz 9aab232937 Fix missing bible import in study guides routes
The bible module was only imported inside get_books() but was
referenced in study_guide_detail() for verse lookups, causing
all verse texts to fail silently.

Also excludes .venv from Docker volume mount to prevent
local/container environment conflicts.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 20:45:55 -05:00
kennethreitz 5c1e4034f5 Remove Christ in Every Book guide, fix verse lookup fallback
- Remove Christ in Every Book study guide (redundant with Gospel in OT)
- Fix verse text lookup to initialize variable before use
- Add fallback "(See Reference)" with link when verse text unavailable
- Add chapter-only reference linking in study guides

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 20:43:21 -05:00
kennethreitz 56b88ee5d9 Add chapter-only reference linking in study guides
Links like "Psalm 2" and "Psalm 45" now link to chapter pages.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 20:37:36 -05:00
kennethreitz d6e190ddce Add format_lists filter for numbered lists in study guides
Converts (1), (2), etc. patterns into proper HTML <ol> lists.
Text after the list is wrapped in a new <p> tag.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 20:36:17 -05:00
kennethreitz 40970e7c3a Add 10 doctrinal and thematic study guides
Doctrinal Studies:
- The Sovereignty of God
- The Attributes of God
- The Doctrine of Scripture
- The Problem of Evil
- Covenant Theology

Thematic Studies:
- The Gospel in the Old Testament
- Christ in Every Book
- The Law and the Christian
- Faith and Works
- The Scarlet Thread

All guides follow Reformed theological framework.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 20:33:13 -05:00
kennethreitz 65601d8b7f Add 11 systematic theology resources and simplify sidebar
New theological resources:
- The Trinity, Christology, Pneumatology, Soteriology
- Ecclesiology, Eschatology, Kingdom of God
- Types and Shadows, Messianic Prophecies
- The Blood in Scripture, Names and Titles of Christ

Updates:
- Add new resources to homepage Theological Studies grid
- Add Systematic Theology category to /resources page
- Simplify sidebar with single "All Resources" link
- Export new data variables from data/__init__.py

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 20:16:35 -05:00
kennethreitz d621301b78 Consolidate resource pages into single generic template
- Created resource_index.html as a unified template for all resource pages
- Updated routes to use the generic template with configurable data
- Added link_verses and link_names filters to descriptions for automatic linking
- Added 6 new resources to /resources page (Miracles, I Am Statements,
  Beatitudes, Ten Commandments, Armor of God, Prayers)
- Deleted 6 redundant individual templates (miracles.html, prayers.html,
  beatitudes.html, ten_commandments.html, armor_of_god.html, i_am_statements.html)

This reduces code duplication and ensures consistent verse linking across
all resource pages.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 19:28:30 -05:00
kennethreitz 02ede39842 Expand Introduction to Spiritual Warfare section
Added 7 additional verses covering the full scope of spiritual warfare:
- Ephesians 6:13 (standing in the evil day)
- James 4:7 (resist the devil)
- Colossians 2:15 (Christ's triumph over powers)
- 1 John 4:4 (greater is He in you)
- Romans 8:37-39 (more than conquerors)
- Revelation 12:11 (overcoming by the blood)
- 2 Timothy 2:3-4 (good soldier of Christ)

Also enhanced description to emphasize Christ's victory at the cross.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 19:23:55 -05:00
kennethreitz e769dd29ec Add new resource pages to sidebar navigation
Added 6 new pages to the Theology section:
- I Am Statements
- Miracles of Jesus
- The Beatitudes
- Ten Commandments
- Armor of God
- Prayers of the Bible

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 19:20:09 -05:00
kennethreitz 651bd1fd96 Expand biblical resource pages with additional content
- Add 7 missing Minor Prophets (Obadiah, Nahum, Habakkuk, Zephaniah,
  Haggai, Zechariah, Malachi) completing all 12
- Add 3 miracles: Second Catch of Fish, Syrophoenician Woman's
  Daughter, Healing the Multitudes
- Add 4 New Testament prayers: Philippians, Thief on Cross,
  Choosing Matthias
- Add 5 Psalms of Prayer: Psalms 63, 27, 86, 143

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 18:51:07 -05:00