Commit Graph

82 Commits

Author SHA1 Message Date
Ryderjj89
4be87972e7 Add NKJV Bible data with numbered book names (01_Genesis, 02_Exodus, etc.)
Complete NKJV translation with:
- 66 books in numbered directory format
- All verses in markdown format
- Consistent naming scheme matching ESV structure
- Encoding normalized for proper text display

This completes the multi-version Bible support with both ESV and NKJV translations.
2025-09-28 12:55:24 -04:00
Ryderjj89
4721e8b5a5 Fix text encoding issues in NKJV files by removing UTF-8 BOM in readMarkdownFile 2025-09-28 12:53:28 -04:00
Ryderjj89
9e16b10222 Add NKJV data to Dockerfile - container now includes NKJV Bible data from repository 2025-09-28 12:36:33 -04:00
Ryderjj89
e432b21d67 Add detailed debugging logs to getBooks function to diagnose NKJV directory reading issue 2025-09-28 12:35:29 -04:00
Ryderjj89
35e5a260da Make search engine initialization more robust - handle missing ESV data directory gracefully and provide better error logging for NKJV 2025-09-28 12:35:00 -04:00
Ryderjj89
e7b98e0107 Fix NKJV directory path in backend - was looking in ../ instead of ../../ 2025-09-28 12:31:30 -04:00
Ryderjj89
ceeb465c8d Add multi-version Bible support with ESV and NKJV translations
- Rename project from 'ESV Bible' to 'The Bible'
- Implement version selection dropdown in homepage header
- Add support for multiple Bible versions:
  * ESV (English Standard Version) - from mdbible
  * NKJV (New King James Version) - from local NKJV/ directory
- Update all API endpoints to accept version parameter (?version=esv|?version=nkjv)
- Add version-aware favorites system that stores and displays Bible version (e.g., 'Genesis 1:1 (ESV)')
- Update database schema to include version column in favorites table
- Maintain backward compatibility with existing data
- Update Docker configuration and documentation
2025-09-28 12:13:37 -04:00
Joshua Ryder
5f832aecd4 Update README.md 2025-09-17 08:50:11 -04:00
Joshua Ryder
399878b442 Update README.md 2025-09-17 08:49:38 -04:00
Joshua Ryder
8bd394a4cf Update README.md 2025-09-17 08:28:49 -04:00
Ryderjj89
245090452e Update README with comprehensive search feature documentation
- Add detailed Bible Search Feature section with capabilities and API endpoints
- Document search interface options (header button, modal, dedicated page)
- Include search parameters and functionality details
- Add acknowledgment for mdbible repository as Bible data source
- Highlight contextual search results and direct verse navigation features
2025-09-15 17:58:52 -04:00
Ryderjj89
6894f1c871 Add direct verse navigation from search results
- Search results now navigate directly to specific verses using URL hash
- Clicking a search result takes you to the chapter and scrolls to the exact verse
- Matches the behavior of favorites navigation for consistent user experience
- URL format: /book/BookName/chapter/1#verse-5 for precise verse targeting
2025-09-15 17:55:08 -04:00
Ryderjj89
b2096c67ae Fix chapter loading issue caused by double padding
- Backend now properly handles chapter names that already include 'Chapter_' prefix
- Prevents double padding that was causing file not found errors
- Maintains backward compatibility for legacy chapter number requests
- Chapter loading should now work correctly alongside search functionality
2025-09-15 17:48:10 -04:00
Ryderjj89
5f22fb5bdc Fix search functionality for markdown bible data
- Update search engine to parse numbered list format (1. verse text)
- Fix chapter file path construction to use Chapter_XX.md format
- Add zero-padding for chapter numbers in API routes
- Skip empty lines and headers in markdown parsing
- Ensure compatibility with external bible data source structure
2025-09-15 17:40:37 -04:00
Ryderjj89
f5639af27f Add comprehensive Bible search feature
- Implement backend search engine with indexing and relevance scoring
- Add search API endpoints (/api/search and /api/search/suggestions)
- Create SearchComponent with modal and page views
- Add search button to header navigation
- Support real-time search with debouncing
- Include context verses and search term highlighting
- Add book filtering and mobile-responsive design
- Integrate with existing routing and navigation system
2025-09-15 17:30:00 -04:00
Joshua Ryder
ebca91591c Update README.md 2025-09-15 17:18:34 -04:00
Ryderjj89
05c9a678af Final UX improvements - show full 'Favorites' text on mobile and add refresh callback when deleting favorites from menu 2025-09-14 13:04:32 -04:00
Ryderjj89
df65718afd Fix mobile delete button - make X button always visible and larger for touch-friendly interaction on mobile devices 2025-09-14 12:56:45 -04:00
Ryderjj89
57e3f4e26c Add scroll-to-verse functionality - verses now have IDs and clicking verse favorites automatically scrolls to the specific verse 2025-09-14 12:52:03 -04:00
Ryderjj89
f46db34329 Fix volume consistency - use esv-bible_data volume name and correct /app/backend/data path in both Docker run commands and docker-compose.yml 2025-09-14 12:48:53 -04:00
Ryderjj89
d430de915a Final README improvements - add Docker Hub image option and detailed OpenID Connect examples for Authentik, Keycloak, and Auth0 2025-09-14 12:44:12 -04:00
Ryderjj89
2f4ee82a5b Comprehensive README update - add all features, fix Docker commands with persistent volumes, improve Docker Compose instructions, and add Cline AI attribution 2025-09-14 12:39:39 -04:00
Ryderjj89
bda3608ff0 Move favorites menu below header to fix mobile cutoff - positioned in layout flow instead of absolute positioning for better mobile experience 2025-09-14 12:33:34 -04:00
Ryderjj89
54646f54d2 Fix mobile favorites menu positioning - prevent cutoff on mobile screens with responsive width and positioning adjustments 2025-09-14 12:26:45 -04:00
Ryderjj89
6bc24c25c9 Fix logout icon and add real-time favorites refresh for books and chapters - LogOut icon replaces square, all favoriting now triggers instant menu refresh 2025-09-14 12:04:54 -04:00
Ryderjj89
d99bc4571c Fix TypeScript compilation error - add explicit type annotation for prev parameter 2025-09-14 11:56:42 -04:00
Ryderjj89
94d17b1d16 Add real-time favorites refresh and improve mobile layout - favorites menu updates instantly when favorites change 2025-09-14 11:53:35 -04:00
Ryderjj89
681a724e8e Fix verse parsing regex to match actual markdown format (1. instead of 1 ) - this will make verse stars appear 2025-09-14 11:45:25 -04:00
Ryderjj89
1fe9dc9c9c Fix critical UX issues: make verse stars always visible and clickable, fix mobile login button visibility 2025-09-14 11:39:43 -04:00
Ryderjj89
2c78f7c437 Fix database schema: allow NULL chapters for book-only favorites 2025-09-13 19:17:51 -04:00
Ryderjj89
d8576a74a9 Fix verse hover visibility - make stars always visible with opacity-60, hover to opacity-100 2025-09-13 19:14:03 -04:00
Ryderjj89
ba671e03f3 Fix book favoriting logic to match working ChapterSelector pattern 2025-09-13 19:13:38 -04:00
Ryderjj89
b9c46451d9 Add organized subheadings to favorites menu with icons for Books, Chapters, and Verses 2025-09-13 19:08:58 -04:00
Ryderjj89
568f253bbb Fix verse hover functionality with improved visibility and better UX 2025-09-13 19:06:21 -04:00
Ryderjj89
dc62b25b34 Fix book favorites persistence on page refresh and improve 409 error handling 2025-09-13 19:05:05 -04:00
Ryderjj89
dbde7f4987 Fix 409 conflict error in BookSelector and improve dark mode preference loading 2025-09-13 18:59:50 -04:00
Ryderjj89
8423784d8d Fix backend API to allow book-only favorites (chapter is now optional) 2025-09-13 18:31:38 -04:00
Ryderjj89
f008fc64b4 Fix TypeScript compilation errors in BookSelector and ChapterSelector by explicitly typing Set<string> 2025-09-13 18:25:29 -04:00
Ryderjj89
07c975b1d0 Fix TypeScript compilation error in BibleReader by explicitly typing Set<string> 2025-09-13 18:22:23 -04:00
Ryderjj89
aca8f9bd64 Add star buttons to ChapterSelector and BibleReader for complete favorites system 2025-09-13 18:18:50 -04:00
Ryderjj89
3e3869c117 Update App to pass user prop to components and add star buttons to BookSelector 2025-09-13 18:14:53 -04:00
Ryderjj89
5301154a20 Add FavoritesMenu component and integrate into App header 2025-09-13 18:12:08 -04:00
Ryderjj89
d8e0544d4d Implement hybrid preferences system - use database for authenticated users, localStorage for non-authenticated users 2025-09-13 18:07:20 -04:00
Ryderjj89
a616cb08c7 Fix OIDC callback parameter mapping - profile parameter is actually the callback function 2025-09-13 18:00:08 -04:00
Ryderjj89
173952d70d Add comprehensive parameter debugging to find actual callback function in OIDC strategy 2025-09-13 17:55:42 -04:00
Ryderjj89
5e6af9f5ad Store done callback in variable to prevent scope loss and add debugging to track callback availability 2025-09-13 17:53:51 -04:00
Ryderjj89
4c4bfaaf1d Remove return statement before done callback to fix scope issue 2025-09-13 17:48:43 -04:00
Ryderjj89
5434fa6dc0 Fix callback scope issue in database user creation - rename nested callback parameter to avoid conflict 2025-09-13 17:43:41 -04:00
Ryderjj89
53245ca662 Fix profile extraction - sub parameter contains the profile object, extract ID from sub.id 2025-09-13 17:38:45 -04:00
Ryderjj89
df761b3626 Fix profile parsing to use sub parameter directly and improve user data extraction 2025-09-13 17:33:43 -04:00