Skip to content

Commit 41bac1f

Browse files
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

18 files changed

+1304
-265
lines changed

components/frontend/package-lock.json

Lines changed: 0 additions & 12 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

components/frontend/src/app/globals.css

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,27 @@
194194
}
195195
}
196196

197+
/* Animation keyframes for welcome experience */
198+
@keyframes fade-in-up {
199+
from {
200+
opacity: 0;
201+
transform: translateY(20px);
202+
}
203+
to {
204+
opacity: 1;
205+
transform: translateY(0);
206+
}
207+
}
208+
209+
@keyframes fade-in-char {
210+
from {
211+
opacity: 0;
212+
}
213+
to {
214+
opacity: 1;
215+
}
216+
}
217+
197218
/* Thin scrollbar styling - Cross-browser support */
198219
.scrollbar-thin {
199220
/* Firefox */

0 commit comments

Comments
 (0)