feat(search): add useSearchCollection composable with FTS5 full-text search#3787
feat(search): add useSearchCollection composable with FTS5 full-text search#3787benjamincanac wants to merge 16 commits intomainfrom
useSearchCollection composable with FTS5 full-text search#3787Conversation
…t search Co-Authored-By: Sébastien Chopin <atinux@gmail.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
commit: |
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
|
Warning Review the following alerts detected in dependencies. According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.
|
🔗 Linked issue
❓ Type of change
📚 Description
Adds
useSearchCollection, a client-side composable that provides full-text search powered by SQLite FTS5. it builds an inverted index from content sections at runtime and queries it with BM25 ranking, prefix matching, and multi-column snippets. no external dependencies needed.Unified FTS5 table across multiple collections, lazy index building with
immediate: falseoption, prefix matching on all terms (typingcompomatches "composable"), configurable field restriction, BM25 column weights with heading-level boosting, camelCase title normalization for better ranking, and graceful handling of FTS5 syntax errors.queryCollectionSearchSectionsstill available for Fuse.js/MiniSearch users who need typo tolerance.📝 Checklist