]> danix's work - danix.xyz-2.git/commit
feat: create shared search module with lazy-loading and Alpine components
authorDanilo M. <redacted>
Mon, 20 Apr 2026 11:50:23 +0000 (13:50 +0200)
committerDanilo M. <redacted>
Mon, 20 Apr 2026 11:50:23 +0000 (13:50 +0200)
commitaefc3d8c3994ba0eb1e3dfced3564ba2b0f8b73f
tree07ac5f584df52397b92188876612a233a25dee7b
parentb6d4089bc8db863d361e21759469c2fcbfcd854c
feat: create shared search module with lazy-loading and Alpine components

- Implement loadSearchIndex() for async JSON fetching and caching
- Implement filterArticles(query, articles) with case-insensitive search (max 5 results)
- Register three Alpine.js components: searchOverlay, mobileSearch, notFoundPage
- Support desktop modal, mobile menu, and 404 page search integration
- Include Escape key handling and index lazy-loading optimizations

Co-Authored-By: Claude Haiku 4.5 <redacted>
themes/danix-xyz-hacker/assets/js/search.js [new file with mode: 0644]