Skip to content

Restructure Search UI landing page #1628

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ The information below reflects our strategic goals, plans and objectives and inc
| **User management** | Elastic Cloud-managed and deployment-local users | Elastic Cloud-managed users only. Serverless users are managed at the organization level with SAML authentication support. |
| **Backups** | User-managed with Snapshot & Restore | Automatically backed up by Elastic |
| **Solutions** | Full {{stack}} per deployment | Single solution per project |
| **CORS** | Supported | Not available. Use a backend proxy to enable integrations. |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ppf2 I'm no CORs expert— is this too simplistic a statement here for the serverless differences table update that we surfaced based on the Search UI convo?


In Serverless, Elastic automatically manages:
* Cluster scaling and optimization
Expand Down
131 changes: 16 additions & 115 deletions solutions/search/site-or-app/search-ui.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,132 +12,33 @@ products:

# What is Search UI? [overview]

A JavaScript library for the fast development of modern, engaging search experiences with [Elastic](https://www.elastic.co/). Get up and running quickly without re-inventing the wheel.
Search UI is a JavaScript library from [Elastic](https://www.elastic.co/). It helps you create modern and customizable search experiences. You can use it with Elasticsearch or other search APIs. It helps developers build complete search interfaces quickly, with minimal boilerplate.

As a headless library, Search UI separates logic from presentation. You can use it with React, vanilla JavaScript, or any front-end framework. You can use built-in React components for quick development. Or, you can create your own from the ground up.

## Features 👍 [overview-features]
Search UI supports advanced capabilities like customizable query behavior, smart URL handling (capturing filters, paging, and queries in the URL), and flexible backend integration through connectors. It works seamlessly with Elasticsearch and also supports custom backends via custom connectors.

* **You know, for search** - Maintained by [Elastic](https://elastic.co), 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 front-end** - Not just for React. Use with any JavaScript library, even vanilla JavaScript.
* **Flexible back-end** - Use it with Elasticsearch, Elastic Enterprise Search, or any other search API.
:::{important}
Enterprise Search is not available in {{stack}} 9.0+.
:::

## Get started
* [Reference documentation](search-ui://reference/index.md): API docs, tutorials, and usage guides
* [Quickstart tutorials](search-ui://reference/tutorials.md)
* [Ecommerce examples](search-ui://reference/ecommerce.md)
* [Basic usage](search-ui://reference/basic-usage.md)
* [API reference](search-ui://reference/api-reference.md)
* [GitHub repository](https://github.com/elastic/search-ui): Source code, examples, and issue tracking

## Live demos 👀 [overview-live-demos]

## Live demos [overview-live-demos]

### Connectors [overview-connectors]

* [Elasticsearch](https://codesandbox.io/s/github/elastic/search-ui/tree/main/examples/sandbox?from-embed=&initialpath=/elasticsearch&file=/src/pages/elasticsearch/index.js)
* [Elastic Site Search (Swiftype)](https://codesandbox.io/s/github/elastic/search-ui/tree/main/examples/sandbox?from-embed=&initialpath=/site-search&file=/src/pages/site-search/index.js)
* ⚠️ DEPRECATED. [Elastic App Search](https://codesandbox.io/s/github/elastic/search-ui/tree/main/examples/sandbox?from-embed=&initialpath=/app-search&file=/src/pages/app-search/index.js)
* ⚠️ DEPRECATED. [Elastic Workplace Search](https://codesandbox.io/s/github/elastic/search-ui/tree/main/examples/sandbox?from-embed=&initialpath=/workplace-search&file=/src/pages/workplace-search/index.js)

- [Elasticsearch](https://codesandbox.io/s/github/elastic/search-ui/tree/main/examples/sandbox?from-embed=&initialpath=/elasticsearch&file=/src/pages/elasticsearch/index.js)
- [Elastic Site Search (Swiftype)](https://codesandbox.io/s/github/elastic/search-ui/tree/main/examples/sandbox?from-embed=&initialpath=/site-search&file=/src/pages/site-search/index.js)

### Examples [overview-examples]

* [Search as you type](https://codesandbox.io/s/github/elastic/search-ui/tree/main/examples/sandbox?from-embed=&initialpath=/search-as-you-type&file=/src/pages/search-as-you-type/index.js)
* [Search bar in header](https://codesandbox.io/s/github/elastic/search-ui/tree/main/examples/sandbox?from-embed=&initialpath=/search-bar-in-header&file=/src/pages/search-bar-in-header/index.js)
* [Customizing Styles and Components](https://codesandbox.io/s/github/elastic/search-ui/tree/main/examples/sandbox?from-embed=&initialpath=/customizing-styles-and-html&file=/src/pages/customizing-styles-and-html/index.js)


## Get Started 🌟 [overview-get-started]


### Installation [overview-installation]

```sh
npm install @elastic/search-ui @elastic/react-search-ui @elastic/react-search-ui-views
# or
yarn add @elastic/search-ui @elastic/react-search-ui @elastic/react-search-ui-views
```


### Tutorials [overview-tutorials]

Get started quickly with Search UI and your favorite Elastic product by following one of the tutorials below:

* [Elasticsearch](search-ui://reference/tutorials-elasticsearch.md)
* [Elastic App Search (⚠️ DEPRECATED)](search-ui://reference/tutorials-app-search.md)
* [Elastic Workplace Search (⚠️ DEPRECATED)](search-ui://reference/tutorials-workplace-search.md)


## Use Cases 🛠️ [overview-use-cases]


### Ecommerce [overview-ecommerce]

Search UI works great in the ecommerce use-case. Check out our [ecommerce guide](search-ui://reference/ecommerce.md) that includes demo and code examples, as well as general guidance for ecommerce search.


## FAQ 🔮 [overview-faq]


### Is Search UI only for React? [overview-is-search-ui-only-for-react]

Search UI is "headless". You can use vanilla JavaScript or write support for it into any JavaScript framework.

[Read about the search-ui package](https://github.com/elastic/search-ui/tree/main/packages/search-ui) for more information, or check out the [Vue.js Example](https://github.com/elastic/vue-search-ui-demo).


### Can I use my own styles? [overview-can-i-use-my-own-styles]

You can!

Read the [Custom Styles and Layout Guide](search-ui://reference/basic-usage.md) to learn more, or check out the [Seattle Indies Expo Demo](https://github.com/elastic/seattle-indies-expo-search).


### Can I build my own Components? [overview-can-i-build-my-own-components]

Yes! Absolutely.

Check out the [Build Your Own Component Guide](search-ui://reference/guides-creating-own-components.md).


### Does Search UI only work with App Search? [overview-does-search-ui-only-work-with-app-search]

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](search-ui://reference/guides-building-custom-connector.md) to learn more about building your own connector for your API.


### How do I use this with Elasticsearch? [overview-how-do-i-use-this-with-elasticsearch]

Read the [Elasticsearch Connector](search-ui://reference/api-connectors-elasticsearch.md) docs.


### Where do I report issues with the Search UI? [overview-where-do-i-report-issues-with-the-search-ui]

If something is not working as expected, open an [issue](https://github.com/elastic/search-ui/issues/new).


### Where can I go to get help? [overview-where-can-i-go-to-get-help]

The Enterprise Search team at Elastic maintains this library and are happy to help. Try posting your question to the [Elastic Enterprise Search](https://discuss.elastic.co/c/enterprise-search/84) 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.


## Contribute 🚀 [overview-contribute]

We welcome contributors to the project. Before you begin, a couple notes…

* Read the [Search UI Contributor’s Guide](https://github.com/elastic/search-ui/blob/main/CONTRIBUTING.md).
* Prior to opening a pull request:

* Create an issue to [discuss the scope of your proposal](https://github.com/elastic/search-ui/issues).
* Sign the [Contributor License Agreement](https://www.elastic.co/contributor-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.

* Write simple code and concise documentation, when appropriate.


## License 📗 [overview-license]

[Apache-2.0](https://github.com/elastic/search-ui/blob/main/LICENSE.txt) © [Elastic](https://github.com/elastic)

Thank you to all the [contributors](https://github.com/elastic/search-ui/graphs/contributors)! 🙏 🙏
- [Search as you type](https://codesandbox.io/s/github/elastic/search-ui/tree/main/examples/sandbox?from-embed=&initialpath=/search-as-you-type&file=/src/pages/search-as-you-type/index.js)
- [Search bar in header](https://codesandbox.io/s/github/elastic/search-ui/tree/main/examples/sandbox?from-embed=&initialpath=/search-bar-in-header&file=/src/pages/search-bar-in-header/index.js)
- [Customizing Styles and Components](https://codesandbox.io/s/github/elastic/search-ui/tree/main/examples/sandbox?from-embed=&initialpath=/customizing-styles-and-html&file=/src/pages/customizing-styles-and-html/index.js)
Loading