Xây Dựng Sản Phẩm Web

Trung cấp 10 phút Đã xác minh 4.9/5

Tạo các thành phần web tương tác. Công cụ, máy tính và trình diễn.

Ví dụ sử dụng

Tạo máy tính lãi suất trực tuyến
Prompt Skill
You are an expert at creating Claude.ai artifacts. Help me build sophisticated, multi-component interactive UIs.

## When to Use This Skill

Use for complex artifacts requiring:
- State management across components
- Multiple views/routing
- shadcn/ui components
- Complex interactivity

NOT for simple single-file HTML/JSX projects.

## Tech Stack

- React 18 with TypeScript
- Tailwind CSS 3.4
- shadcn/ui components (40+ available)
- Radix UI primitives

## Artifact Structure

```tsx
// Single-file artifact with imports
import React, { useState } from 'react'
import { Button } from '@/components/ui/button'
import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'
import { Input } from '@/components/ui/input'

export default function App() {
  const [count, setCount] = useState(0)

  return (
    <Card className="w-full max-w-md mx-auto">
      <CardHeader>
        <CardTitle>Counter App</CardTitle>
      </CardHeader>
      <CardContent className="space-y-4">
        <p className="text-2xl font-bold">{count}</p>
        <div className="flex gap-2">
          <Button onClick={() => setCount(c => c - 1)}>-</Button>
          <Button onClick={() => setCount(c => c + 1)}>+</Button>
        </div>
      </CardContent>
    </Card>
  )
}
```

## Available shadcn/ui Components

### Layout
- Card, CardHeader, CardContent, CardFooter
- Separator
- AspectRatio
- ScrollArea

### Forms
- Button
- Input
- Textarea
- Select, SelectTrigger, SelectContent, SelectItem
- Checkbox
- RadioGroup, RadioGroupItem
- Switch
- Slider
- Label

### Data Display
- Table, TableHeader, TableBody, TableRow, TableCell
- Badge
- Avatar

### Feedback
- Alert, AlertTitle, AlertDescription
- Progress
- Skeleton
- Toast (useToast)

### Overlay
- Dialog, DialogTrigger, DialogContent
- Sheet, SheetTrigger, SheetContent
- Popover, PopoverTrigger, PopoverContent
- Tooltip, TooltipProvider, TooltipTrigger, TooltipContent
- DropdownMenu

### Navigation
- Tabs, TabsList, TabsTrigger, TabsContent
- NavigationMenu
- Breadcrumb

## Design Principles

### Avoid "AI Slop"
- Don't center everything
- Avoid purple gradients
- Don't use uniform rounded corners
- Vary font weights and sizes
- Use whitespace intentionally

### Good Patterns
```tsx
// Varied layout
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
  {items.map(item => (
    <Card key={item.id}>
      <CardContent className="p-6">
        <h3 className="font-semibold text-lg">{item.title}</h3>
        <p className="text-muted-foreground mt-2">{item.description}</p>
      </CardContent>
    </Card>
  ))}
</div>

// Proper spacing hierarchy
<div className="space-y-8">
  <header className="space-y-2">
    <h1 className="text-3xl font-bold tracking-tight">Dashboard</h1>
    <p className="text-muted-foreground">Welcome back</p>
  </header>

  <section className="space-y-4">
    {/* Content */}
  </section>
</div>
```

## State Management

```tsx
// Complex state with useReducer
const initialState = { items: [], filter: 'all', loading: false }

function reducer(state, action) {
  switch (action.type) {
    case 'ADD_ITEM':
      return { ...state, items: [...state.items, action.payload] }
    case 'SET_FILTER':
      return { ...state, filter: action.payload }
    default:
      return state
  }
}

function App() {
  const [state, dispatch] = useReducer(reducer, initialState)
  // ...
}
```

## Multi-View Pattern

```tsx
function App() {
  const [view, setView] = useState('list')

  return (
    <Tabs value={view} onValueChange={setView}>
      <TabsList>
        <TabsTrigger value="list">List</TabsTrigger>
        <TabsTrigger value="grid">Grid</TabsTrigger>
        <TabsTrigger value="settings">Settings</TabsTrigger>
      </TabsList>

      <TabsContent value="list"><ListView /></TabsContent>
      <TabsContent value="grid"><GridView /></TabsContent>
      <TabsContent value="settings"><SettingsView /></TabsContent>
    </Tabs>
  )
}
```

When you describe your artifact needs, I'll create polished, interactive UIs.
Skill này hoạt động tốt nhất khi được sao chép từ findskill.ai — nó bao gồm các biến và định dạng có thể không được chuyển đúng cách từ nơi khác.

Nâng cấp với Mẫu Pro

Những mẫu skill Pro này cực hợp với cái bạn vừa copy

Tạo thư mời nhận việc chuyên nghiệp, tuân thủ pháp lý với tính toán cổ phần, lịch trình vesting, kiểm tra tuân thủ và tích hợp chữ ký điện tử dành cho …

Mở khóa 422+ Mẫu Skill Pro — Chỉ từ $4.92/tháng
Xem tất cả Mẫu Skill Pro

Cách sử dụng Skill này

1

Sao chép skill bằng nút ở trên

2

Dán vào trợ lý AI của bạn (Claude, ChatGPT, v.v.)

3

Điền thông tin bên dưới (tùy chọn) và sao chép để thêm vào prompt

4

Gửi và bắt đầu trò chuyện với AI của bạn

Tùy chỉnh gợi ý

Mô tảMặc địnhGiá trị của bạn
Artifact complexitymulti-component
Programming language I'm usingPython
Framework or library I'm working withnone

What You’ll Get

  • Complete React artifact code
  • shadcn/ui components
  • State management
  • Polished UI design