feat(tui): add ASCII art banner on startup

This commit is contained in:
William Valentin
2026-02-10 13:11:32 -08:00
parent f204ff1dd7
commit f892bbe6ca
4 changed files with 43 additions and 2 deletions
+7 -1
View File
@@ -3,6 +3,7 @@ import { Box, Text, Static } from 'ink';
import type { Message } from '../../../models/types.js';
import { getMessageText } from '../../../models/media.js';
import { renderMarkdown } from '../markdown.js';
import { getBannerLines } from '../banner.js';
export interface MessageListProps {
messages: Message[];
@@ -80,7 +81,12 @@ export const MessageList = memo(function MessageList({
return (
<Box flexDirection="column" flexGrow={1} paddingX={1} overflowY="hidden">
{visibleMessages.length === 0 && !streamingContent ? (
<Text color="gray">No messages yet. Start typing to chat with Flynn.</Text>
<Box flexDirection="column" alignItems="center" justifyContent="center" flexGrow={1}>
{getBannerLines().map((line, i) => (
<Text key={i} color="#ff8c00">{line}</Text>
))}
<Text color="gray">{'\n'}Start typing to chat with Flynn.</Text>
</Box>
) : (
<>
<Static items={visibleMessages}>