evitaLab Desktop is the official desktop GUI client for evitaDB e-commerce database.
evitaLab Desktop aims to provide a user-friendly local desktop client for evitaDB database to easily browse and modify data stored in multiple database instances.
evitaLab Desktop allows you to:
- ✅ manage connections to multiple evitaDB instances
- ✅ connect to any server version in one app
- note: server version must be at least 2025.1, older versions of evitaLab were not yet backported to work in the driver mode
- ✅ receive evitaLab core updates as soon as they are released without waiting for server update
- ✅ each connection stores its own tabs and history, even if each connection points to same server URL
- this is useful when you are using port forwarding for different server environments (prod, test, local) where local port is the same for each environment
- ✅ connections styling for better distinction between servers and environments
- ✅ global notification system - displays toast notifications from desktop app and connections in one place
- this way you can see notifications from all connections all the time
As well as the features of the evitaLab core*:
- ✅ inspect schemas
- ✅ browse entities in interactive table
- ✅ execute GraphQL queries
- ✅ execute evitaQL queries
- ✅ visualise extra results
- ✅ share tabs between developers
- ✅ manage server (status, tasks, JFR recordings)
- ✅ manage catalogs and collections
- ✅ analyze server traffic
* depends on used evitaLab core version based on connected evitaDB server
However, evitaLab Desktop and evitaLab core are still in active development and more features are planned.
evitaLab Desktop is not a replacement for the evitaLab. Instead, it builds on top of the evitaLab.
The evitaLab core is the main heart. It handles opened tabs, consoles, viewers, connection explorer and so on. Basically everything that has to do with accessing evitaDB server data.
The evitaLab Desktop on the other hand, act as orchestrator of the evitaLab core instances for different evitaDB servers. The desktop app allows you to connect to several separate evitaDB servers, and for each such connections picks the appropriate evitaLab version.
This way you can access different evitaDB server versions from a single app without any hassle.
Binaries are available for all major platforms (Windows, Linux, macOS). You can find them in releases.
Note: evitaLab Desktop versioning is separate from the evitaLab core versioning. Just pick the newest desktop app version no matter your server version.
Newer macOS versions quarantine not-signed apps (we are working on it), therefore after installation, macOS may throw error saying the app is broken. To prevent that, execute following command after installation to get the app out of the quarantine:
cd /Applications
sudo xattr -d com.apple.quarantine evitaLab.app
For other platforms, you will have to clone the repository and configure the Electron Forge config for you platform and build it with:
yarn install
yarn make
Before you start, make sure you have Node.js in version specified in .nvmrc
and Yarn
package manager installed.
If you would like to contribute to evitaLab Desktop source code or just simply play with it locally, you just need to
clone the project, install the Node.js in version specified in .nvmrc
and Yarn (as that's what we use for development)
and run the following commands to run the evitaLab Desktop locally:
# running using yarn
yarn install
yarn start
You can find more indepth info about internal structure and guidelines of evitaLab in developer documentation.
Any contributions are welcome and appreciated. If you would like to contribute to evitaLab Desktop or the evitaLab core, feel free to open an issue and submit a pull request.