User Profile
User profile page with avatar, personal information, and preferences.
User ProfileUnsaved changes
import { Card, CardContent, CardHeader, CardTitle } from "./components/ui/card" import { Badge } from "./components/ui/badge" import { Input } from "./components/ui/input" import { Label } from "./components/ui/label" import { Button } from "./components/ui/button" import { Mail, MapPin, Calendar, Edit } from "lucide-react" export default function UserProfile() { return ( <div className="p-6 space-y-6 max-w-4xl mx-auto"> <Card> <CardContent className="pt-6"> <div className="flex flex-col md:flex-row gap-6"> <div className="flex flex-col items-center gap-4"> <div className="h-32 w-32 rounded-full bg-primary/20 flex items-center justify-center text-4xl font-bold"> JD </div> <Button variant="outline" size="sm"> <Edit className="h-4 w-4 mr-2" /> Change Photo </Button> </div> <div className="flex-1 space-y-4"> <div> <h2 className="text-2xl font-bold">John Doe</h2> <p className="text-muted-foreground">Product Designer</p> </div> <div className="flex flex-wrap gap-2"> <Badge>Pro Member</Badge> <Badge variant="secondary">Verified</Badge> </div> <div className="space-y-2 text-sm"> <div className="flex items-center gap-2 text-muted-foreground"> <Mail className="h-4 w-4" /> john.doe@example.com </div> <div className="flex items-center gap-2 text-muted-foreground"> <MapPin className="h-4 w-4" /> San Francisco, CA </div> <div className="flex items-center gap-2 text-muted-foreground"> <Calendar className="h-4 w-4" /> Joined March 2024 </div> </div> </div> </div> </CardContent> </Card> <Card> <CardHeader> <CardTitle>Edit Profile</CardTitle> </CardHeader> <CardContent className="space-y-4"> <div className="grid gap-4 md:grid-cols-2"> <div className="space-y-2"> <Label htmlFor="name">Full Name</Label> <Input id="name" defaultValue="John Doe" /> </div> <div className="space-y-2"> <Label htmlFor="title">Job Title</Label> <Input id="title" defaultValue="Product Designer" /> </div> </div> <div className="space-y-2"> <Label htmlFor="bio">Bio</Label> <Input id="bio" defaultValue="Passionate about creating beautiful user experiences" /> </div> <Button>Update Profile</Button> </CardContent> </Card> </div> ) }