The development of search UI started with node version 18.14.0 and npm version 9.0 hence we recommend to use 18 > version > 20, and npm version > 9
nvm is a version manager for node.js, designed to be installed per-user, and invoked per-shell. nvm works on any POSIX-compliant shell (sh, dash, ksh, zsh, bash), in particular on these platforms: unix, macOS, and windows WSL.
To install or update nvm, you should run the install script. To download it use any of the following commands replacing {version} with the correct version.
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/{version}/install.sh | bash
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/{version}/install.sh | bash
To verify that nvm has been installed, do:
command -v nvm
To install a node version in this version manager use
nvm install {version}
you could use the alias "node" as the version to install the latest node version
You can list available versions using ls-remote
:
nvm ls-remote
To change between node versions installed with nvm:
nvm use {version}
You can migrate packages from one node version to another:
nvm install {version} --reinstall-packages-from={another_version}
To list your installed versions:
nvm ls
All the previous documentation was taken from the nvm repository documentation where you can find troubleshooting articles and further documentation.
You may install pnpm even if you don't have Node.js installed, using the following scripts.
Using PowerShell:
iwr https://get.pnpm.io/install.ps1 -useb | iex
curl -fsSL https://get.pnpm.io/install.sh | sh -
If you don't have curl installed, you would like to use wget:
wget -qO- https://get.pnpm.io/install.sh | sh -
bash wget -qO- https://get.pnpm.io/install.sh | ENV="$HOME/.bashrc" SHELL="$(which bash)" bash - sh wget -qO- https://get.pnpm.io/install.sh | ENV="$HOME/.shrc" SHELL="$(which sh)" sh - dash wget -qO- https://get.pnpm.io/install.sh | ENV="$HOME/.dashrc" SHELL="$(which dash)" dash -
npm install -g pnpm
If you have the package manager installed, you can install pnpm using the following command:
brew install pnpm
Now install the dependencies from package.json by executing the following pnpm
pnpm install
You can do the same thing with NPM, but we highly recommend using PNPM, mostly because of the non-flat node_modules directory, which prevents version collision
Search UI is using the MUI Theme provider to specify the color of the components, darkness of the surfaces, level of shadow, appropriate opacity of ink elements, etc. You can learn more in Theming from MUI
Currently, Search UI implements a light and dark theme, locates on src/themes