- 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>
The sidenotes already provide context - tooltips on top were overkill.
Strong's links still work for click-through to the full page.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Left border accent instead of box
- Inline word + transliteration on first line
- Definition below
- Simple "KJV: ..." line at bottom
- Removed derivation and extra chrome
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
New layout features:
- Horizontal header with word, transliteration, and Strong's number
- Serif typography (Crimson Text) matching sidenote style
- Meta section with small-caps labels for KJV usage and derivation
- Subtle border and shadow for elegant appearance
- Proper dark mode support
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Hovering over the Greek/Hebrew term in word study sidenotes now shows
a tooltip with the Strong's card: original word, transliteration,
Strong's number, and definition. Uses same positioning logic as verse
tooltips.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Bumped font-size from 0.9rem to 1rem and max-width from 400px to
450px for better readability.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Links inside sidenotes (like "Jesus" or Strong's references) were
inheriting the red color from .words-of-christ styling due to an
!important rule in base.html. Added more specific sidenote link rules
with !important to override.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add 30px margin-left to article when sidebar visible (above 768px)
- Reset margin on mobile when sidebar hidden
- Adjust breadcrumb to align with sidebar edge
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Relocate shared large font mode and dark mode rules to style.css
for proper separation of concerns. Includes rules for:
- Large font: .intro-text, .verse-ref, .verse-text, .print-btn, etc.
- Dark mode: .words-of-christ, .section-card, .person-card-*, .nav-paragraph.selected
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Move common large font mode CSS rules (.intro-text, .verse-ref,
.verse-text, .print-btn, etc.) to base.html to reduce duplication
across templates.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Convert verse navigation to pill-style buttons
- Extend breadcrumb bar to the left with padding
- Add scroll-margin-top for verse anchors on chapter page
- Rename 'Chapter X' to 'Read in Chapter X'
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Cross-references now display as compact pills (always visible, no collapse)
- Hover tooltip shows verse text
- Sidebar current selection is now bold (font-weight: 700)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Use file modification time hash for base.js and tufte.css to
automatically bust browser cache when files are updated.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Keep the font toggle (A) visible on mobile while hiding other
breadcrumb action buttons (speech, bookmark).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Remove checked attribute so hamburger menu starts closed on mobile.
Desktop sidebar is always visible via CSS regardless of checkbox state.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Show lowercase 'a' for normal mode, uppercase 'A' for large text mode
- Fix speech button not showing stop icon while playing
- Check all speech sources (KJVResourceSpeech, KJVSpeech, speechSynthesis)
- Clear suppressSpace flag on button click to fix toggle behavior
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Disable sticky breadcrumb on mobile, hide action buttons
- Add mobile styles to chapter page (nav, touch targets)
- Add mobile styles to verse page (share buttons, tooltips)
- Add mobile styles to books page (responsive grid)
- Add mobile styles to book page (chapter links, nav hints)
- Add mobile styles to search page (full-width, iOS zoom fix)
- Add mobile styles to topics and reading plans pages
- Improve touch targets across all pages (44px min)
- Fix max-width containers for mobile (100%)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Create /stars page with collapsible groups, notes, and keyboard nav
- Add yellow star bookmark button in breadcrumb (☆/★)
- Add nav badges showing star count and reading plan % complete
- Change 's' shortcut from Stories to Stars
- Update toast to say "Added to Starred Pages"
- Persist group collapse state in localStorage
- Support notes with monospace font and edit/add functionality
- Update accessibility page and ? help modal
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Copy button (⎘):
- Copies page content to clipboard
- Shows ✓ checkmark briefly when copied
Bookmark button (☆/★):
- Toggle bookmark for current page
- Stored in localStorage as kjvBookmarks
- Star fills in (★) when page is bookmarked
Bookmarks page (/bookmarks):
- View all saved bookmarks
- Shows title and date saved
- Remove individual bookmarks or clear all
- Reads from localStorage on client side
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- One button toggles between normal and large text
- Button shows larger A when large mode is active
- Removed small and x-large sizes
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Click 🔊 to read page content aloud
- Button changes to ⏹ while speaking
- Click again to stop
- Strips out navigation, buttons, and other non-content elements
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Only show fixed dark mode toggle on pages without breadcrumbs
- Pages with breadcrumbs get dark mode in the sticky breadcrumb actions
- Add breadcrumbs to search page
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Breadcrumb now sticks to top when scrolling (position: sticky)
- Action buttons (font size, dark mode) appear in breadcrumb when stuck
- Remove old separate sticky header element
- Remove fixed font size controls (now in breadcrumb)
- Cleaner, simpler approach using native CSS sticky
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
1. Sticky header on scroll
- Shows current page title and breadcrumb navigation
- Appears when scrolling past the main breadcrumb
- Smooth slide-down animation
2. Font size controls (A/A buttons)
- Small, normal, large, x-large sizes
- Persisted to localStorage
- Positioned next to dark mode toggle
3. Prefetch next/prev pages
- Uses requestIdleCallback for non-blocking prefetch
- Prefetches chapter/verse/book navigation links
- Makes page-to-page navigation feel instant
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove sidebar toggle button on desktop (>1200px)
- Sidebar now always visible on desktop for better navigation
- Keep hamburger menu toggle on mobile/tablet (<1200px)
- Remove backtick keyboard shortcut for sidebar toggle
- Update accessibility page to remove backtick reference
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Create dedicated accessibility page at /about/accessibility
- Add skip link for keyboard/screen reader users
- Add keyboard navigation to interlinear landing page
- Implement 2D grid navigation for theological studies on homepage
- Add accessibility section to homepage with keyboard shortcut info
- Fix verse text color contrast on fruits of the spirit page
- Fix malformed proverbs commentary data
- Update about page with accessibility link
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
All resource pages (parables, christology, biblical-prophets, etc.)
now correctly highlight the Resources nav item in the sidebar.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Users can access books via the Books page. Cleaner nav focuses on
features and actions rather than duplicating book navigation.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Extracted ~1250 lines of JavaScript from base.html to static/base.js
- Reduced base.html from ~2700 lines to ~1440 lines
- Updated tests to expect 404 (not 500) for invalid resources
- Updated CLAUDE.md to reflect proper error handling
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Updated parseVerseUrl to recognize /book/{book}/chapter/{chapter}#verse-{verse} format in addition to the old /verse/ path format.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>