nebari-dev / nebari

🪴 Nebari - your open source data science platform
https://nebari.dev
BSD 3-Clause "New" or "Revised" License
280 stars 93 forks source link

Services menu in JLab has multiple behaviors #2711

Open kcpevey opened 2 months ago

kcpevey commented 2 months ago

Context

The services menu in JLab behaves differently based on which of the options you choose. Its disorienting for users when conda-store opens within the JLab window, but other options open in a new tab.

A solution would be to visually breakdown the services menu so users have a concept that the behavior is different.

Here is an initial design for this breakdown:

image

Value and/or benefit

Users have a visual indication that some services are different from others and therefore the result of clicking on them is not disorienting.

Anything else?

No response

dharhas commented 2 months ago

"internal"/"External" isn't a good description of what these are.

krassowski commented 2 months ago

The menu is currently defined in:

https://github.com/nebari-dev/nebari/blob/d22e5cbb58b8566a0626a2d95e53ad684d40e986/src/_nebari/stages/kubernetes_services/template/modules/kubernetes/services/jupyterhub/files/jupyterlab/overrides.json#L47-L108

Some functions are implemented in https://github.com/nebari-dev/jupyterlab-nebari-mode extension. For compatibility when jupyterlab-conda-store extension is disabled or not installed it will open the Environment Management tab externally in new tab.

krassowski commented 2 months ago

We can add the divider easily. We can add non-clickable "Internal"/"External" entries. We can:

The problem will be if an admin disabled https://github.com/conda-incubator/jupyterlab-conda-store and now it does not open in JupyterLab.

I think I would prefer to change the menu items to show [↗] as the label can be set separately for the scenario when jupyterlab-conda-store is installed vs when it is not.

Adam-D-Lewis commented 2 months ago

I agree internal/external seems like the wrong labels. Conda store (Environment Management) is external to Nebari as well. It just happens to be developed by Quansight as well, but it's a separate open source project the same as Keycloak (User Management) or any of the others.

Update: I realize you mean internal/external windows, but it wouldn't have been clear to me without the explanation above.

kcpevey commented 2 months ago

I think I would prefer to change the menu items to show [↗]

I love this idea!