A React library that allows you to quickly implement search experiences without re-inventing the wheel.
Use it with Elastic to have a search experience up and running in minutes.
- You know, for search - Maintained by Elastic, the team behind Elasticsearch.
- Speedy Implementation - Build a complete search experience with a few lines of code.
- Customizable - Tune the components, markup, styles, and behaviors to your liking.
- Smart URLs - Searches, paging, filtering, and more, are captured in the URL for direct result linking.
- Flexible back-end - Use it with Elasticsearch, Elastic Enterprise Search, or any other search API.
Search UI works great in the ecommerce use-case. Check out our ecommerce guide that includes demo and code examples, as well as general guidance for ecommerce search.
Nope. Search UI is "headless".
Check out the Build Your Own Component Guide.
Nope! We do have two first party connectors: Site Search and App Search.
But Search UI is headless. You can use any Search API.
Read the Building a custom connector to learn more about building your own connector for your API.
Read the Elasticsearch Connector docs.
If something is not working as expected, please open an issue.
The Enterprise Search team at Elastic maintains this library and are happy to help. Try posting your question to the Elastic Enterprise Search discuss forums. Be sure to mention that you're using Search UI and also let us know what backend your using; whether it's App Search, Site Search, Elasticsearch, or something else entirely.
We welcome contributors to the project. Before you begin, a couple notes...
- Read the Search UI Contributor's Guide.
- Prior to opening a pull request, please:
- Create an issue to discuss the scope of your proposal.
- Sign the Contributor License Agreement. We are not asking you to assign copyright to us, but to give us the right to distribute your code without restriction. We ask this of all contributors in order to assure our users of the origin and continuing existence of the code. You only need to sign the CLA once.
- Please write simple code and concise documentation, when appropriate.
Thank you to all the contributors! 🙏 🙏