meilisearch/meilisearch-rust

Running in browser using WASM

Closed this issue ยท 9 comments

Looks this is possible https://github.com/meilisearch/meilisearch-rust#-running-in-the-browser-with-wasm, but more information can be documented. This can bring MeiliSearch to more static site builders.

Hello @rrjanbiah!

An issue about improving this section is currently opened: #30
It should have been done by an external contributor, but it seems he is busy, so if you are free to improve this section you are more than welcome ๐Ÿ˜

I'm transferring this issue to the meilisearch-rust repo since it's only related to this repo ๐Ÿ˜‰

@curquiza Thank you. I'm not much familiar with WASM yet. But, I'll see what I can do still.

Some background on why I posted this ticket:

  • I was searching for some non-JVM alternative to the Elastic search for a new project as it was consuming more memory
  • Stumbled up https://mosuka.github.io/search-benchmark-game/ and found that https://github.com/tantivy-search/tantivy is the fastest; and they provide browser support through WASM
  • Then stumbled upon both MeiliSearch and Typesense. Somehow liked MeiliSearch (no scientific reasons though) and found that it is lacking browser support.. and posted it :-)

@rrjanbiah Thanks for your feedback, really interesting to know how you found out MeiliSearch ๐Ÿ˜„

The maintainer (@Mubelotix) just created a PR to add the tutorial "MeiliSearch + WASM" in this PR #71!! He did a great job!
I'm waiting for my requested changes to be modified and I will merge the PR ๐Ÿš€
In the meantime, you can already check out the PR without waiting for the merge ๐Ÿ˜‰

@curquiza Awesome. Thanks to both of you

@curquiza Apologies for the late feedback. Looks like @Mubelotix has bundled the whole application in WASM. But, what I expected was something different: the MeiliSearch engine as WASM... so that pure browser based search is possible without any build or compilation process. Few players in this space:

  1. https://github.com/olivernn/lunr.js
  2. https://github.com/weixsong/elasticlunr.js
  3. https://github.com/krisk/fuse

Let me know, if you want me to open a new ticket.

That would be great but it is a non-goal. Meilisearch has not been designed to be compiled for the browser and is depending on libraries that are not supporting WASM.

@Mubelotix Thanks for clarifying that it is not possible. In that case, the documentation is slightly misleading.

Hello @rrjanbiah!
Can you create a PR or tell us what part is misleading or how to improve it? ๐Ÿ™‚