Commit 41bac1f
Smoother session onboarding experience (#470)
This PR is a mix of general improvements and temporary frontend trickery
to smooth out the onboarding experience of newly-created sessions until
they reach a `Running` state.
Some of this may become unnecessary once we implement worker pools of
running sessions/pods or something better in the backend. Until then,
this should help a bit.
## Existing experience
https://github.com/user-attachments/assets/b8e2ba28-cc0b-4e28-bd79-5447b123169d
Our current session onboarding experience is a series of toast
notifications, loading states, spinners, elements that pop in, and a
message that very subtly asks the user to select a Workflow to get
started.
If the user finds the Workflow switcher they're rewarded with a "Reload
required" prompt, a "Load new workflow" button to click, and even more
spinners and toasts in the face as they wait for everything to settle
down.
This onboarding currently takes 60+ seconds.
## Improved experience
(Note: the recording below was created early in this PR's life to show
the general flow improvement, some details may change)
https://github.com/user-attachments/assets/bf33046e-8145-44ba-b70b-25de04817395
This PR smooths out the session onboarding experience by getting us a
little closer to @Daniel-Warner-X's original design with in-chat
Workflow suggestions and a static welcome message that appears
immediately.
This gives users something that feels a bit more responsive until we
implement backend improvements that make things actually responsive.
Users may still have to wait a bit for their session's pod to fully spin
up, but this at least gives them more to do and look at while they wait.
Some of the adjustments include:
- A static, instantly-loading welcome message that looks like a regular
chat message but isn't
- A few suggested workflows that a user can read and select without
using the "Workflows" panel
- Removing most loading spinners and states in favor of queuing changes
until the session's pod is `Running`
- Showing the chatbox immediately so users can start typing something
while they wait
---------
Signed-off-by: Michael Clifford <mcliffor@redhat.com>
Co-authored-by: Michael Clifford <mcliffor@redhat.com>1 parent 1f80243 commit 41bac1f
File tree
18 files changed
+1304
-265
lines changed- components/frontend
- src
- app
- projects/[name]/sessions
- [sessionName]
- components
- accordions
- hooks
- new
- components
- session
- ui
- hooks
- services/queries
18 files changed
+1304
-265
lines changedSome generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
194 | 194 | | |
195 | 195 | | |
196 | 196 | | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
197 | 218 | | |
198 | 219 | | |
199 | 220 | | |
| |||
0 commit comments