Please note: since January 2022, this demo is now hosted at https://github.com/meilisearch/demos/tree/main/src/MoMA
MeiliSearch | Documentation | Website | Blog | Twitter | FAQ
In this repository, you will find the front-end interface to search through the Museum Of Modern Art Collection. The search is powered by MeiliSearch, a powerful, fast and open-source search engine easy to use and deploy.
If you want to replicate this demo using your own MeiliSearch instance, you will have to follow these steps:
Download and launch MeiliSearch using the basic configuration. For example, by using cURL in your terminal.
$ curl -L https://install.meilisearch.com | sh
$ ./meilisearch
This walkthrough runs MeiliSearch in a development environment, and therefore it does not use any master key.
There are many other easy ways to download and run a MeiliSearch instance.
Set the credentials of the MeiliSearch instance as environment variables.
VUE_APP_MEILISEARCH_HOST="yourMeiliSearchInstanceAddress"
VUE_APP_MEILISEARCH_API_KEY="yourMeiliSearchAPIKey"
Because we did not set any Master key in the previous step, we can leave VUE_APP_MEILISEARCH_API_KEY
as an empty string and only set the host:
VUE_APP_MEILISEARCH_HOST='http://127.0.0.1:7700'
You can download the dataset by running the following commands:
$ npm install
$ npm run get-dataset
Or you can get it manually in the MoMA repository and copy it in the setup folder.
$ npm run prep-meili
Don't forget to run $ npm install
first, if you didn't do it in the previous step.
This will do the following:
-
Create three indexes called
artWorks
,artWorksAsc
andartWorksDesc
in your MeiliSearch instance. -
Add all artworks documents to those indexes.
-
Add custom settings to each one for a more relevant search.
You can now run the project. The front-end client is now communicating with your MeiliSearch instance.
$ npm run serve
Visit http://localhost:8080/
in your browser and start searching with MeiliSearch!
MeiliSearch provides and maintains many SDKs and Integration tools like the ones used in this project. We want to provide everyone with an amazing search experience for any kind of project. If you want to contribute, make suggestions, or just know what's going on right now, visit us in the integration-guides repository.