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
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
#3654Input/output error (os error 5) with a 800GB index33 comments · 2023-04-09#3494About replicating Meilisearch32 comments · 2023-02-14#1495`searchableAttributes` change order of fields in response hits24 comments · 2021-07-07#4402Meilisearch x Azure: current incompatibilities17 comments · 2024-02-12#4189Document boosting17 comments · 2023-11-02#4840Make the meilisearch integration tests run faster16 comments · 2024-07-30#6369Composite embedder retriggers indexer (API calls) on first search after service started/restarted14 comments · 2026-05-04#5952How to limit semantic search to relevant results only?12 comments · 2025-10-22
Latest release
v1.56.1 🐫 v1.56.1 2026-11-02Meilisearch 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