meilisearch /meilisearch

A lightning-fast search engine API bringing AI-powered hybrid search to your sites and applications.

★ 59,826⑂ 2,786👁 293⑃ 3,194● 2,499▤ 341◈ 0
RustNOASSERTIONCreated 2018-04-23www.meilisearch.com
59,826
stars
+9+68+286
2,786
forks
293
watchers
3,194
prs
2,499
issues
341
releases
0
discussions

README

Website |
  Roadmap |
  Meilisearch Cloud |
  Blog |
  Documentation |
  FAQ |
  Discord



  
  
  


⚡ A lightning-fast search engine that fits effortlessly into your apps, websites, and workflow 🔍

Meilisearch is a search engine for fast, relevant full-text, semantic, and hybrid search. The easiest way to get started and run it in production is Meilisearch Cloud: create a project and run your first search in minutes, with no servers to deploy, upgrade, or maintain. The engine is open source under the MIT license, so you can also self-host it.


  
    
  
  
    
  


 ☁️ Ways to run Meilisearch

| | What you get | Get started |
| --- | --- | --- |
| Meilisearch Cloud (recommended) | Managed Meilisearch: no servers to deploy or upgrade, plus monitoring, search analytics, and team management. Available in 9 regions across Europe, the Americas, and Asia-Pacific. 14-day trial. | Create a project |
| Self-hosted, Community Edition | The open-source engine under the MIT license, on your own infrastructure. | Quick start |
| Self-hosted, Enterprise Edition | Adds sharding and other advanced features. Requires a commercial agreement for production use. | Editions & licensing |

Both options run the same engine and expose the same API, so you can start on one and move to the other. See migrating to Meilisearch Cloud.

 🚀 Quick start

 1. Get a Meilisearch instance

Option A: Meilisearch Cloud (recommended). No install. Start a 14-day trial, then create a project and pick a region. Your project URL and API keys are on the project settings page.

Option B: Self-host. Run the open-source engine locally with Docker:

sh
docker run -it --rm \
  -p 7700:7700 \
  -v $(pwd)/meili_data:/meili_data \
  getmeili/meilisearch:latest


Prefer a binary? Run:
sh
curl -L https://install.meilisearch.com | sh
./meilisearch


More options: install Meilisearch locally.

 2. Add documents

sh
curl -X POST "https://ms-url-example.meilisearch.io/indexes/movies/documents" \
  -H 'Content-Type: application/json' \
  -H "Authorization: Bearer apiKey" \
  --data-binary '[
    { "id": 1, "title": "Carol", "genres": ["Romance", "Drama"] },
    { "id": 2, "title": "Wonder Woman", "genres": ["Action", "Adventure"] },
    { "id": 3, "title": "Life of Pi", "genres": ["Adventure", "Drama"] }
  ]'


 3. Search, typo included

sh
curl -X POST "https://ms-url-example.meilisearch.io/indexes/movies/search" \
  -H 'Content-Type: application/json' \
  -H "Authorization: Bearer apiKey" \
  --data-binary '{ "q": "wondre woman" }'


Meilisearch returns Wonder Woman despite the typo. Indexing is asynchronous, so if the search comes back empty, wait a moment and retry.

Next steps: follow a 5-minute quick start for JavaScript, Python, PHP, Ruby, Go, Rust, or React, or follow the Cloud getting started guide.

 ✨ Features
- Hybrid search: Combine the best of both semantic & full-text search to get the most relevant results
- Search-as-you-type: Find & display results in less than 50 milliseconds to 

Top issues

Latest release

v1.56.1 🐫 v1.56.1 2026-11-02
Meilisearch v1.56.1 introduces important security fixes. Updating from v1.56.0 is recommended for all users.

 🦋 Fixes

 Fix issue with ranking scores greater than 1 by @dureuill in https://github.com/meilisearch/meilisearch/pull/6703
 Make sure that all nested fields are inserted in field id map by @dureuill in https://github.com/meilisearch/meilisearch/pull/6700

  - Fixes a panic when modifying the list of searchable attributes after an existing document has been updated to insert new nested fields.
  
  - Existing databases encountering this issue can be fixed by adding a new docu

Snapshot: 2026-11-10T09:35:25Z · Data license Apache-2.0 · JSON