Commit Graph

22 Commits

Author SHA1 Message Date
e39bb5bbba feat: add Spanish language support
Added complete Spanish (es) translation for the Biblical Guide application:
- Created messages/es.json with full Spanish translations
- Updated i18n.ts to include Spanish locale
- Updated middleware.ts to handle Spanish routes
- Added Spanish to language options in all locale files

Users can now access the app in Spanish at /es/* routes and select Spanish from the language settings.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-10 17:58:35 +00:00
989f231d5a feat: add captcha verification to contact form
Added math-based captcha system to prevent spam on the contact form:
- Created captcha API endpoint with simple arithmetic questions
- Added captcha UI component with refresh functionality
- Integrated captcha verification into contact form submission
- Relaxed spam filters since captcha provides better protection

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-10 17:53:56 +00:00
a01b2490dc Implement comprehensive PWA with offline Bible reading capabilities
- Add Web App Manifest with app metadata, icons, and installation support
- Create Service Worker with intelligent caching strategies for Bible content, static assets, and dynamic content
- Implement IndexedDB-based offline storage system for Bible versions, books, chapters, and verses
- Add offline download manager component for browsing and downloading Bible versions
- Create offline Bible reader component for seamless offline reading experience
- Integrate PWA install prompt with platform-specific instructions
- Add offline reading interface to existing Bible reader with download buttons
- Create dedicated offline page with tabbed interface for reading and downloading
- Add PWA and offline-related translations for English and Romanian locales
- Implement background sync for Bible downloads and cache management
- Add storage usage monitoring and management utilities
- Ensure SSR-safe implementation with dynamic imports for client-side components

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-28 22:20:44 +00:00
3ae9733805 Add sitemap and robots.txt, update home page stats to static values, and fix prayer language detection
- Create sitemap.xml with internationalized routes and proper SEO attributes
- Create robots.txt with appropriate crawling rules for public/private content
- Update home page stats to show static values (1,416 Bible versions, 17M+ verses)
- Remove live stats API calls to eliminate loading delays
- Add /api/stats endpoint for potential future use
- Fix Romanian prayers incorrectly tagged as English in database
- Add missing AZURE_OPENAI_DEPLOYMENT to .env.example
- Update translation keys for Bible versions stat
- Add sample English prayer requests to populate prayer wall

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-25 06:41:02 +00:00
95070e5369 Add comprehensive page management system to admin dashboard
Features added:
- Database schema for pages and media files with content types (Rich Text, HTML, Markdown)
- Admin API routes for full page CRUD operations
- Image upload functionality with file management
- Rich text editor using TinyMCE with image insertion
- Admin interface for creating/editing pages with SEO options
- Dynamic navigation and footer integration
- Public page display routes with proper SEO metadata
- Support for featured images and content excerpts

Admin features:
- Create/edit/delete pages with rich content editor
- Upload and manage images through media library
- Configure pages to appear in navigation or footer
- Set page status (Draft, Published, Archived)
- SEO title and description management
- Real-time preview of content changes

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-24 07:26:25 +00:00
Claude Assistant
d4b0062521 Implement comprehensive homepage improvements and SEO optimization
Major homepage and SEO enhancements based on optimization document:

**Homepage Content Updates:**
- Updated H1 titles with SEO-optimized text for both RO/EN
- Enhanced hero descriptions with targeted keywords
- Improved feature descriptions for better clarity
- Updated daily verse section with keyword-rich titles
- Added new footer description with SEO focus

**SEO Implementation:**
- Added dynamic metadata generation with locale-specific SEO
- Implemented Open Graph tags for social media sharing
- Added Twitter Card metadata for enhanced sharing
- Integrated Schema.org JSON-LD structured data
- Set up hreflang tags for international SEO
- Added canonical URLs to prevent duplicate content
- Included targeted keywords for both languages

**Technical Improvements:**
- Migrated from Docker to PM2 deployment
- Removed Docker files and updated deployment scripts
- Updated README with PM2 instructions
- Fixed console log cleanup for production
- Added proper favicon with Next.js app directory
- Increased memory limit to 4GB for better performance
- Updated port configuration to 0.0.0.0:3010
- Set Romanian (/ro) as default locale with proper redirects

**Translation Updates:**
- Enhanced Romanian translations with SEO-optimized content
- Updated English translations with matching SEO improvements
- Added new 'seo' namespace for metadata translations

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-22 18:40:21 +00:00
andupetcu
73a8b44f76 Fix Discuss this verse functionality and update live counter to static text
- Replace dynamic live counter with static "thousands of believers" text in both languages
- Fix Discuss this verse feature with proper timing and quote escaping
- Add setTimeout delay to ensure chat input is set after component renders
- Remove unescaped quotes from English daily verse text
- Merge duplicate hero translation objects in both language files
- Clean up debug console.log statements

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-22 10:57:45 +03:00
andupetcu
e2c7e21967 Implement comprehensive homepage enhancements and floating chat improvements
- Add dynamic date and year generation replacing static 2024 values
- Implement "Discuss this verse" feature with AI chat integration
- Fix translation key conflicts by merging duplicate hero objects
- Update Romanian translations with improved messaging
- Enhance floating chat to support initial messages via events
- Fix FORMATTING_ERROR for liveCounter with proper next-intl syntax

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-22 10:39:07 +03:00
andupetcu
72d39e74c8 Implement comprehensive homepage enhancements with 8 new sections
Features implemented:
1. Enhanced Hero Section with live user counter (simulated)
2. Interactive Demo Section with chat preview
3. Daily Verse Section with actions (discuss, save, share)
4. How It Works 3-step process visualization
5. Community Prayer Wall with live prayer examples
6. Testimonials Section with 4 realistic testimonials
7. FAQ Section with 6 common questions and expandable answers
8. Enhanced Footer with newsletter signup, quick links, legal, and social

Additional improvements:
- Added live counter showing active users studying
- Interactive demo showing AI chat conversation
- Newsletter subscription form
- Social media links and language indicators
- Comprehensive translations in English and Romanian
- Mobile-responsive design with flexbox layouts
- Modern Material-UI components with animations
- Enhanced visual hierarchy and user engagement
2025-09-22 09:48:11 +03:00
andupetcu
f71b6d44c7 Fix prayer page errors: add missing translations and fix time formatting
- Added missing 'categories.all' translation in both ro.json and en.json
- Fixed relativeTime formatting by using new Date() instead of useNow hook
- Removed unused useNow import

🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-21 23:18:48 +03:00
andupetcu
4cd9b406ad Redesign search page with modern UX and user-specific features
- Complete redesign of search interface with auto-suggestions, advanced filtering, and professional result display
- Implement user-specific search history (stored per user ID) for privacy
- Move popular searches from sidebar to filters modal for better organization
- Make all page sections full width by removing container constraints
- Add comprehensive search functionality with context display, bookmarks integration, and result navigation
- Include proper Romanian translations for search types ("Căutare generală", "Căutare exactă")
- Enhance UX with skeleton loading, empty states, mobile responsiveness, and keyboard shortcuts

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-21 21:23:05 +03:00
andupetcu
40c2df3b41 Update Romanian translations and improve chapter dropdown
- Change "Bookmark-uri" to "Favorite" throughout Romanian translations
- Update chapter dropdown to show full "Chapter X" labels instead of truncated text
- Add improved MenuProps for better dropdown UX with scrollable menu
- Enhance navigation clarity with non-truncated chapter selection

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-21 21:10:25 +03:00
andupetcu
6eade8df49 Fix missing translation keys for Bible reader settings dialog
- Add theme button translations: light, dark, sepia
- Add close button translation for settings dialog
- Complete internationalization for Romanian and English locales

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-21 14:31:07 +03:00
andupetcu
a2380efadd Create enhanced Bible reader with modern UX and compact navigation
- Replace old Bible page with comprehensive reader component
- Add customizable reading preferences (font size, themes, line height)
- Implement in-page navigation instead of sidebar layout
- Add quick font size controls (A- / A+) in navigation bar
- Create fullscreen reading mode with distraction-free experience
- Include verse-level bookmarking and copy functionality
- Add keyboard shortcuts for navigation and settings
- Support URL parameters for bookmark navigation
- Responsive design optimized for mobile and desktop
- Complete internationalization for Romanian and English
- Center navigation controls for better visual balance

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-21 14:20:05 +03:00
andupetcu
686f498300 Create comprehensive bookmarks management page
Add complete bookmarks page with navigation functionality:

Features:
- Dedicated /bookmarks page for viewing all saved bookmarks
- Support for both chapter and verse bookmarks in unified view
- Statistics dashboard showing total, chapter, and verse bookmark counts
- Tabbed filtering (All, Chapters, Verses) for easy organization
- Direct navigation to Bible reading page with URL parameters
- Delete functionality for individual bookmarks
- Empty state with call-to-action to start reading

Navigation Integration:
- Add Bookmarks to main navigation menu (authenticated users only)
- Add Bookmarks to user profile dropdown menu
- Dynamic navigation based on authentication state

Bible Page Enhancements:
- URL parameter support for bookmark navigation (book, chapter, verse)
- Verse highlighting when navigating from bookmarks
- Auto-clear highlight after 3 seconds for better UX

API Endpoints:
- /api/bookmarks/all - Unified endpoint for all user bookmarks
- Returns transformed data optimized for frontend consumption

Multilingual Support:
- Full Romanian and English translations
- Consistent messaging across all bookmark interfaces

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-21 01:29:46 +03:00
andupetcu
1b43b4e1e3 Implement complete bookmark functionality for Bible reading
Add both chapter-level and verse-level bookmarking capabilities:

Database Changes:
- Add ChapterBookmark table for chapter-level bookmarks
- Update schema with proper relationships to User and BibleBook models
- Maintain existing Bookmark table for verse-level bookmarks

API Endpoints:
- /api/bookmarks/chapter (GET, POST, DELETE) with check endpoint
- /api/bookmarks/verse (GET, POST, DELETE) with check and bulk-check endpoints
- JWT authentication required for all bookmark operations
- Multilingual error messages (Romanian/English)

Frontend Implementation:
- Chapter bookmark button in Bible page header with visual state feedback
- Individual verse bookmark icons with hover-to-reveal UI
- Highlighted background for bookmarked verses
- Efficient bulk checking for verse bookmarks per chapter
- Real-time UI updates without page refresh

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-21 01:25:50 +03:00
andupetcu
196ca00194 Fix authentication state persistence and admin role display
- Implement complete authentication system with JWT token validation
- Add auth provider with persistent login state across page refreshes
- Create multilingual login/register forms with Material-UI components
- Fix token validation using raw SQL queries to bypass Prisma sync issues
- Add comprehensive error handling for expired/invalid tokens
- Create profile and settings pages with full i18n support
- Add proper user role management (admin/user) with database sync
- Implement secure middleware with CSRF protection and auth checks
- Add debug endpoints for troubleshooting authentication issues
- Fix Zustand store persistence for authentication state

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-21 01:06:30 +03:00
andupetcu
df0eb6661f Add version selector to /[locale]/search: new /api/bible/versions endpoint; fetch versions per locale; refetch books on version change; pass version to search API; localized label. 2025-09-20 18:13:13 +03:00
andupetcu
0f31dfca8e Localize /[locale]/search page via next-intl; translate UI strings, filters, statuses; use bookTranslations to render book labels by locale; keep DB filters steady; support popular searches per locale. 2025-09-20 18:08:43 +03:00
andupetcu
71447d32c3 Localize prayers page via next-intl messages (titles, categories, stats, buttons, dialog, samples); use Intl relative time; scalable for more locales. 2025-09-20 18:06:27 +03:00
andupetcu
88b251c100 Fix Edge-incompatible middleware; set Node runtime on Prisma/pg routes; add full Romanian Bible import + converter; import data JSON; resync RO bookKeys; stabilize /api/bible/books locale fallback; restart dev server. 2025-09-20 18:01:04 +03:00
andupetcu
a0969e88df Implement complete multi-language support with Romanian/English
- Added next-intl for internationalization with Romanian as default locale
- Restructured app directory with [locale] routing (/ro, /en)
- Created comprehensive translation files for both languages
- Fixed Next.js 15 async params compatibility in layout components
- Updated all components to use proper i18n hooks and translations
- Configured middleware for locale routing and fallbacks
- Fixed FloatingChat component translation array handling
- Restored complete home page with internationalized content
- Fixed Material-UI Slide component prop error (mountOnExit → unmountOnExit)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-20 15:43:51 +03:00