- Add real-time autocomplete endpoint with fast name-only queries
- Replace static search form with interactive Alpine.js component
- Include 300ms debounced search with keyboard navigation support
- Add instructional help dropdown when search input is focused but empty
- Implement proper content type icons with hex colors instead of CSS classes
- Add database indexes for optimized name searches across all content types
- Support arrow key navigation, Enter to select/search, Escape to close
- Maintain full search functionality as fallback for comprehensive results
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Replace PostgreSQL ILIKE with cross-database LOWER/LIKE queries
- Add multi-word search support with AND logic (e.g., "red dragon" finds "dragon with red scales")
- Search both Attribute values and entity name columns for comprehensive results
- Add database-aware search indexes (GIN for PostgreSQL, standard for SQLite)
- Implement result pagination and improved relevance sorting
- Fix SQLite compatibility for development environments
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Created a landing page for logged-out users showcasing document analysis features
- Built a functional dashboard hub for logged-in users with analysis tools and insights
- Added new routes and controller actions to handle both views
- Updated sidebar link to point to the new analysis hub
- Added analysis count badge to sidebar navigation
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
This commit adds test coverage for the FoldersController, including tests for:
- Authentication requirements
- Creating folders and subfolders
- Updating folders
- Viewing folders
- Filtering by favorites and tags
- Deleting folders
- Security (preventing access to other users' folders)
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Switched to Materialize's built-in modal trigger mechanism
- Added proper modal-trigger class to help button
- Replaced inline onclick handler with data-target attribute
- Properly initialized all modals using document.querySelectorAll
- Added event listener for direct programmatic control
- Used getInstance pattern for reliable modal manipulation
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Replaced link with proper clickable button element
- Added inline onclick handler for immediate response
- Pre-defined modal structure in HTML instead of generating it dynamically
- Simplified JavaScript modal initialization for reliability
- Fixed event handling to ensure proper click response
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Fixed card alignment on incomplete rows to align left instead of right
- Added help button in header area with question mark icon
- Implemented modal with step-by-step instructions for joining the showcase
- Created styles for the how-to-join modal with proper highlighting
- Added JavaScript to dynamically create and show the modal
- Made help button stand out with pulse effect for visibility
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>