Initial Loading
Joule / Patterns / Initial Loading
Intro
The initial loading pattern allows users to begin inputting their query while Joule is loading. This reduces perceived wait time and gives users the freedom to jump-start their tasks without blocking interaction.
Initial loading view in compact Joule panel (left) and expanded Joule panel (right)
Usage
Do
- Show initial loading while loading Joule for the very first time.
- Show initial loading when switching between conversations.
- Show initial loading when initiating a new conversation.
Don't
Don’t change the input field variant used during the initial loading state. Messages can’t be sent during this time so the loading variant must be used.
Anatomy
A. Joule Logo Illustration
The Joule logo illustration is a pulsating icon that indicates something is processing.
B. Joule Header
The Joule header provides options to minimize or close the Joule panel.
C. Input Field
The input field allows users to start typing queries during the initial loading phase. The query cannot be sent until Joule is loaded.
D. AI Notice
The AI notice displays a disclaimer about the AI-generated content.
Anatomy of initial loading
States
Initial loading error state
Behavior and Interaction
Cold Start
Starting Joule then transitioning into the welcome screen after initial loading
Warm Start
Starting Joule then transitioning to a conversation after initial loading
New Conversation
Starting new conversation then transitioning into the welcome screen after initial loading
Switch Conversations
Switching conversations then transitioning to the new conversation after initial loading
Close Joule
Typing a query into the initial loading put field, then closing and reopening Joule
Adaptive Design
Initial loading follows the same responsive behavior as the Joule panel.