Chapter 3: Polish & Design
User-Level Memory
User-Level Memory
In Chapter 1, you learned about project-level CLAUDE.md files. But Claude Code also supports a user-level memory file that follows you across every project. This is perfect for design preferences.
The ~/.claude file
Claude Code looks for a CLAUDE.md file in your home directory:
This file is loaded in addition to your project's CLAUDE.md. It's the place for preferences that apply to all your work, not just one project.
Think of it this way: your project CLAUDE.md says "this app uses Tailwind and Next.js." Your user-level CLAUDE.md says "I prefer clean minimal designs with generous whitespace."
Setting up your design preferences
Create (or update) your user-level CLAUDE.md with your design preferences:
Here's an example of design-related preferences you might add:
# Personal Preferences
## Design Style
- I prefer clean, minimal UIs with generous whitespace
- Favor subtle shadows over heavy borders
- Use smooth transitions (150-200ms) for interactions
- Default to system font stack unless I specify otherwise
- Prefer muted color palettes with one strong accent color
## Code Style
- Use Tailwind CSS utility classes, avoid custom CSS when possible
- Prefer named CSS variables for colors (design tokens)
- Always include hover and focus states on interactive elements
- Add aria-labels to icon-only buttons for accessibility
## Dark Mode
- Always implement both light and dark themes
- Use Tailwind's class-based dark mode strategyWhy this matters for design work
When you start a design-focused session, Claude Code already knows:
- Your aesthetic preferences
- Your approach to color and spacing
- Your accessibility standards
- Your tooling preferences
You can ask Claude Code to create this file for you: "Create a ~/.claude/CLAUDE.md with my design preferences. I like clean minimal designs, smooth animations, and always want dark mode support."
Project vs. user preferences
Here's how the two levels work together:
| File | Scope | Contains |
|---|---|---|
~/.claude/CLAUDE.md | All projects | Personal style, tool preferences, design taste |
./CLAUDE.md | This project | Stack, structure, project-specific patterns |
Keep your user-level file focused on preferences, not project specifics. If it gets too long, Claude Code has to load all that context for every project, even when it's not relevant.
Updating CLAUDE.md as you refine
As you work through this chapter, you'll develop stronger opinions about your design preferences. Update your user-level file as those preferences solidify. After this chapter, you might add:
## Animation Preferences
- Use framer-motion for complex animations
- Prefer CSS transitions for simple hover/focus states
- Default duration: 200ms, easing: ease-out
- Animate list items with staggered fade-inYour user-level memory grows with you. The more Claude Code knows about your taste, the better its design suggestions become.