-
-
Notifications
You must be signed in to change notification settings - Fork 394
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
First steps for search box #20
First steps for search box #20
Conversation
For later, consider full text search, maybe https://github.com/theronic/datascript-fulltext/ Especially the first hit is a bit slow. I can imagine this gets worse when the db grows. Might need some fulltext search indexing at some point. A first optimization would be to just limit the text to a minimum of characters, but Roam doesn't do this either. |
Needs some proper design :)
@jeroenvandijk maybe something like https://github.com/nextapps-de/flexsearch or http://elasticlunr.com/ can be integrated quite easily? It isn't ClojureScript but it doesn't look that hard to write a simple wrapper / use it directly using interop. |
Thanks for the suggestion @jelmerderonde! I think we could combine that library with the work that was done in datascript fulltext approach mentioned before I think for now the current search is good enough. We have to focus on the presentation of the results. With the current amount of data in the database we wouldn't really have a proper test case either. But I'm sure your suggestion will be of help in the next phase when we can import full databases and can write new data into Athens |
Just came across this article: https://www.notion.so/Product-Search-in-Clojure-DataScript-3d467efc55244f3693127f8d9da5f262 Interesting stuff we might want to use if we ever revisit this issue. |
@jelmerderonde incredible find. Loved how he did fuzzy search, tokenization, and direct index access. All his projects and writing are excellent as well. |
Indent, Enter and backspace monitoring
A first version of a search box.
TODO
Screenshot