The Elastic UI Framework is a collection of React UI components for quickly building user interfaces at Elastic.
Check out our full documentation site which contains many examples of components in the EUI framework aesthetic, and how to use them in your products. We also have a FAQ that covers common usage questions. For other general questions regarding EUI, check out the Discussions tab.
The rest of this doc will detail how to run and contribute to the EUI documentation site locally.
We depend upon the version of node defined in .nvmrc.
You will probably want to install a node version manager. nvm is recommended.
To install and use the correct node version with nvm
:
nvm install
Notes: if you are running on an M1 Apple device, you might want to the following
- downgrade to node v14 (
lts/fermium
akav14.19.3
works)- make sure that you're running your terminal in Rosetta mode > - select the
Terminal
application in the Finder (Applications -> Utilities)- right-click and select
Get Info
then check theOpen using Rosetta
check-box- close the window and restart your Terminal
You can run the documentation locally at http://localhost:8030/ by running the following.
yarn
yarn start
If another process is already listening on port 8030, the next free port will be used. Alternatively, you can specify a port:
yarn start --port 9000
The primary goal of this library is to provide reusable UI components that can be used throughout Elastic's web products. As React components, they remove CSS from the process of building UIs. As a single source of truth, the framework allows our designers to make changes to our aesthetic directly in the code. And unit test coverage for the UI components allows us to deliver a stable "API for user interfaces".
Dual-licensed under Elastic v2 and Server Side Public License, v 1 Read the FAQ for details.