Home

Awesome

Commerce Search & Discovery: Interface X

License lerna Check branch is releasable GitHub contributors Created by

Whether you use Empathy Search API endpoints, Elasticsearch, Solr or other search APIs, bring your commerce search and discovery experience to life with Interface X, an irresistible, expressive, and joyful search UI. Interface X is used within some of the most beautiful commerce search experiences out there, e.g. Oysho.com, Carrefour.es, Bosch-Home.es, and Kroger.com.

Interface X is a library of standalone, configurable building blocks (available as Vue.js based X Components) that allow you to quickly construct the search UI for your shop. You can create a smooth, personalized search and discovery experience, while significantly minimizing development time.

X Components

Each component represents a graphical part of the UI, with its own unique view and behavior. They’ve been smartly designed to work together yet independently, so a single component adds real value to your UI by itself. The more components you add and combine, the more functionality you get. You can craft your own UI bundle with the right components for your shop. There are numerous components to choose from, and the catalog evolves quickly with new experiences.

See an overview of the Empathy Platform features supported by Interface X.

Highlights

About the Interface X ecosystem

Interface X is formed by multiple packages. Watch this space as the project will be updated regularly.

While most of the packages are minor dependencies, there is a key package to bear in mind:

On top of the packages of this monorepo, there is another project using all the X-Components to build a search experience:

Product documentation

Each component contains inline comments. Alternatively, you can read the product documentation on Empathy’s eDocs documentation portal.

<!--- [Frequently Asked Questions](Content to be developed for GitHub project)--->

Roadmap

We are working on many key features to consolidate Interface X, including these milestones:

How to install

This project is a monorepo that is handled by Lerna & pnpm & Nx. To prepare your development environment, proceed as follows:

  1. Install pnpm (v8.6.1)
  2. Fork the X repository and then clone it to your local environment: git clone https://github.com/empathyco/x.git.
  3. Install the dependencies in the root folder: pnpm install --frozen-lockfile. This links all the projects.

Have a look to this article to see why we moved to a mono repo and how we did it. Take into account that the article talks about the previous version of this monorepo managed by Lerna & npm.

How to implement Interface X

Once you have installed the project, follow the step-by-step guide - How to build your search UI.

Watch Ivan Tajes’ explanation on how to build a search experience using the X Components.

How to contribute

We are building the Interface X ecosystem. If you are interested in helping us out and being part of the future of search experiences, please check our contributing guidelines.

Core Team

<a href="https://github.com/tajespasarela"><img src="https://avatars.githubusercontent.com/u/5759712?v=4" width="100px;" alt=""/><br /><br /><b>Iván Tajes</b></a><a href="https://github.com/javieri-empathy"><img src="https://avatars.githubusercontent.com/u/68222542?v=4" width="100px;" alt=""/><br /><br /><b>Javier Iglesias</b></a><a href="https://github.com/joseacabaneros"><img src="https://avatars.githubusercontent.com/u/10746604?v=4" width="100px;" alt=""/><br /><br /><b>Jose Antonio Cabañeros</b></a><a href="https://github.com/LuisMartinez15"><img src="https://avatars.githubusercontent.com/u/6247440?v=4" width="100px;" alt=""/><br /><br /><b>Luís Martínez</b></a><a href="https://github.com/tiborux"><img src="https://avatars.githubusercontent.com/u/6597815?v=4" width="100px;" alt=""/><br /><br /><b>Beltrán García</b></a>
<a href="https://github.com/herrardo"><img src="https://avatars.githubusercontent.com/u/4663897?v=4" width="100px;" alt=""/><br /><br /><b>Gerardo Vázquez</b></a><a href="https://github.com/CachedaCodes"><img src="https://avatars.githubusercontent.com/u/7124620?v=4" width="100px;" alt=""/><br /><br /><b>Guillermo Cacheda</b></a><a href="https://github.com/mavmaf"><img src="https://avatars.githubusercontent.com/u/77147901?v=4" width="100px;" alt=""/><br /><br /><b>Mavi Fernández</b></a><a href="https://github.com/diegopf"><img src="https://avatars.githubusercontent.com/u/7504736?v=4" width="100px;" alt=""/><br /><br /><b>Diego Pascual</b></a><a href="https://github.com/mnavarroespinosa"><img src="https://avatars.githubusercontent.com/u/77450928?v=4" width="100px;" alt=""/><br /><br /><b>Manuel Navarro</b></a>
<a href="https://github.com/ajperezbau"><img src="https://avatars.githubusercontent.com/u/75546736?v=4" width="100px;" alt=""/><br /><br /><b>Abraham Pérez</b></a><a href="https://github.com/annacv"><img src="https://avatars.githubusercontent.com/u/21217131?v=4" width="100px;" alt=""/><br /><br /><b>Anna Condal</b></a><a href="https://github.com/alvarodE"><img src="https://avatars.githubusercontent.com/u/72568818?v=4" width="100px;" alt=""/><br /><br /><b>Álvaro Díaz</b></a><a href="https://github.com/lauramargar"><img src="https://avatars.githubusercontent.com/u/114984466?v=4" width="100px;" alt=""/><br /><br /><b>Laura Martínez</b></a>

Contributors

<a href="https://github.com/empathyco/x/graphs/contributors"> <img src="https://contrib.rocks/image?repo=empathyco/x" alt="Contributors image list"/> </a>

License

Apache 2.0