--- title: Claude Clone description: Open-source Claude clone in React — warm cream theme, serif typography, hover-only action bars, and a clean minimal-shadow composer styled after claude.ai. --- import { Claude } from "@/components/examples/claude";
## Overview The Claude Clone demonstrates how to customize assistant-ui to match Anthropic's Claude interface. The design leans on Claude's signature warm cream background, serif typography, and a deliberately minimal chrome — no shadows, no avatars, just a thin border on the composer and bubbles that fade into the page. ## Features - **Warm Cream Background**: `#F0ECE0` light, `#2b2a27` dark — a warmer Anthropic-style cream - **Serif Throughout**: `font-serif` on every surface for the editorial feel - **Sparkle Heading**: Centered "How can I help you today?" with the orange `#c96442` Sparkle icon - **Borderless Composer**: Just `border-[#E5E0D6]` and no shadow — matches claude.ai's stripped-down look - **Functional Model Picker**: Sonnet 4.5 / Opus 4.7 / Haiku 4.5 dropdown with "More options" - **Mode Tabs**: Write / Learn / Code / From Drive / From Calendar — `rounded-lg` chips with thin borders - **Hover-only Action Bars**: User Edit/Copy and Assistant Copy/👍/👎/Reload only appear on hover - **Four-State Primary Action**: Cancel, StopDictation, Send, Dictate (orange `#c96442` accent) ## Quick Start ```bash npx assistant-ui add thread ``` ## Code The empty state centers the heading + composer + mode tabs together. The chat state uses a sticky composer with a fade-out gradient over the cream background: ```tsx import { AuiIf, ThreadPrimitive, ComposerPrimitive, MessagePrimitive, ActionBarPrimitive, } from "@assistant-ui/react"; export const Claude = () => ( s.thread.isEmpty}> !s.thread.isEmpty}> {() => }

Claude can make mistakes. Please double-check responses.

); const EmptyState = () => (

How can I help you today?

); const Composer = () => (
); ``` ### Hover-only Action Bars Both user and assistant action bars use opacity + group-hover to stay out of the way: ```tsx
``` ### Color Palette | Element | Light | Dark | |---------|-------|------| | Background | `#F0ECE0` | `#2b2a27` | | Composer surface | `white` | `#1f1e1b` | | Composer border | `#E5E0D6` | `#3d3a35` | | User bubble | `#E5E0D6` | `#393937` | | Primary text | `#1a1a18` | `#eee` | | Muted text | `#5b5950` | `#a3a098` | | Primary action (orange) | `#c96442` | `#c96442` | ### Styling Details - **Typography**: `font-serif` everywhere; assistant message uses `leading-[1.65rem]` for a calm reading rhythm - **No Shadows**: Composer relies on `border-[#E5E0D6]` only — claude.ai's signature flat surface - **User Bubble**: `rounded-2xl bg-[#E5E0D6] max-w-[80%]` right-aligned - **Assistant Message**: full-width plain serif, no bubble, no avatar — text sits on the cream background directly - **Mode Tabs**: `rounded-lg border border-[#E5E0D6] bg-transparent` so they blend into the cream ## Source