Skip to main content
Atlas is deprecated. Use AI Kit for any new Atlas experiences.
Atlas is an extended component library designed for building AI-powered chat interfaces. It provides a comprehensive set of components for creating conversational UI experiences, including chat windows, message displays, input composers, and recommendation cards.

Installation

Atlas components are available from the @servicetitan/anvil2-ext-atlas package:

Import

Key Features

Chat Window System

The core chat experience is built around composable components that work together:
  • ChatWindow - The main container with open/close animations and positioning
  • Header - Configurable header with drag, fullscreen, and navigation controls
  • Footer - Message input area with the rich text composer
  • Content - Scrollable message container with auto-scroll behavior

Message Components

Display different types of messages in the conversation:
  • UserMessage - Messages sent by the user
  • AssistantMessage - Simple text responses from Atlas
  • MarkdownMessage - Rich markdown-formatted responses with toolbox actions
  • SystemMessage - Interactive system prompts with radio options
  • ErrorMessage - Error states with retry functionality

Recommendation Cards

Present actionable recommendations to users:
  • SingleRecommendationCard - Single-select options with radio buttons
  • MultipleRecommendationCard - Multi-select options with checkboxes
  • ConfirmationCard - Simple confirmation prompts with action buttons

Utility Components

Supporting components for common patterns:
  • Suggestion / SuggestionList - Clickable suggestion chips
  • Toolbox - Copy, like, dislike, and retry actions for messages
  • Loader - Animated loading indicator for pending responses
  • Spinner - Full-screen loading spinner
  • Welcome - Onboarding welcome screen
  • SystemError - Error state display

Hooks

React hooks for managing chat window behavior:
  • useDraggable - Make the chat window draggable with boundary constraints
  • useInfiniteScroll - Load more content when scrolling
  • useScrollCallback - Respond to scroll position changes

Component Architecture

The Atlas components are designed to be composed together to create a complete chat experience:

Dependencies

Atlas components are built on top of the core Anvil2 component library and include:
  • Anvil2 - Core UI components (Button, Card, Flex, Text, etc.)
  • Framer Motion - Animations and transitions
  • React Markdown - Markdown rendering for message content
  • MobX React - Observable state management (optional)
Last modified on July 24, 2026