WelcomeScreen Component
TheWelcomeScreen component displays helpful hints and a central menu when users first open the Excalidraw editor. It’s designed to guide new users and can be fully customized to match your application’s branding and onboarding flow.
Basic Usage
Welcome Screen Structure
The WelcomeScreen is composed of several subcomponents that can be used together or individually:Main Component
React.ReactNode
The content to display in the welcome screen. Typically includes
WelcomeScreen.Center and hint components. If not provided, renders the default welcome screen.WelcomeScreen.Center
The central panel containing the logo, heading, and menu.React.ReactNode
Content for the center panel. If not provided, renders default logo, heading, and menu.
WelcomeScreen.Center.Logo
Displays the Excalidraw logo or a custom logo.React.ReactNode
Custom logo content. If not provided, displays the Excalidraw logo.
WelcomeScreen.Center.Heading
The main heading text.React.ReactNode
required
The heading text to display.
WelcomeScreen.Center.Menu
Container for menu items.React.ReactNode
Menu items to display. Can be built-in items or custom
MenuItem components.Built-in Menu Items
WelcomeScreen.Center.MenuItemLoadScene
Opens the file picker to load a scene.This item is automatically hidden when
viewModeEnabled is true.WelcomeScreen.Center.MenuItemHelp
Opens the help dialog with keyboard shortcuts.WelcomeScreen.Center.MenuItemLiveCollaborationTrigger
Triggers live collaboration mode.function
required
Callback when the collaboration item is clicked.
Custom Menu Items
WelcomeScreen.Center.MenuItem
A clickable menu item.onSelect(function, required) - Callback when clickedicon(JSX.Element) - Icon to displayshortcut(string) - Keyboard shortcut to showchildren(React.ReactNode) - Item label
WelcomeScreen.Center.MenuItemLink
A menu item that links to an external URL.href(string, required) - URL to openicon(JSX.Element) - Icon to displayshortcut(string) - Keyboard shortcut to showchildren(React.ReactNode) - Link label
Welcome Screen Hints
Visual hints that point to different parts of the UI.WelcomeScreen.Hints.MenuHint
Points to the main menu (hamburger icon) in the top-left corner.React.ReactNode
Custom hint text. If not provided, uses default localized text.
WelcomeScreen.Hints.ToolbarHint
Points to the toolbar at the top of the canvas.React.ReactNode
Custom hint text. If not provided, uses default localized text.
WelcomeScreen.Hints.HelpHint
Points to the help button in the bottom-right corner.React.ReactNode
Custom hint text. If not provided, uses default localized text.
Complete Examples
Controlling Visibility
The welcome screen is controlled by theshowWelcomeScreen property in the app state:
Styling
The WelcomeScreen uses these CSS classes:Internationalization
The default welcome screen text is automatically localized based on thelangCode prop:
Best Practices
- Keep it simple - Don’t overwhelm users with too many options
- Show value quickly - Highlight the most important actions first
- Use clear language - Avoid jargon, be welcoming and friendly
- Provide escape - Make it easy for users to dismiss and start working
- Consider mobile - Ensure the welcome screen is readable on small screens
- Show once - Remember user preference to not show again
- Test with users - Validate that your welcome screen actually helps
See Also
- Excalidraw - Main component documentation
- MainMenu - Main menu customization
- Footer - Footer customization