0Pricing
Vibe Coding · 강의

구성 요소 생성

필요할 때 버튼, 카드와 양식을 만듭니다.

구성 요소 생성은(는) CoddyKit의 무료 Vibe Coding 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Vibe Coding 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Vibe Coding 강의에는 총 4개의 강의가 포함되어 있습니다.

이 강의의 일부는 아직 번역되지 않았으며 영어로 표시됩니다.

Build in Pieces, Not All at Once

A full page can feel overwhelming to prompt. The pro move is to generate one component at a time: a button, a card, a form, a navbar. Each is a small, reusable building block.

In this lesson you'll prompt v0, Lovable, and Bolt to produce clean components on demand — and learn how to combine them into a real interface.

What Is a Component?

A component is a self-contained piece of UI you can reuse: one button definition, used 50 times across your app. Change it once, it updates everywhere.

Thinking in components keeps your prompts focused and your app consistent. Most AI UI tools output components in React, the most popular way to build modern interfaces.

Common components you'll prompt for:
- Button (primary, secondary, ghost)
- Card (image + title + text + action)
- Form input (label + field + validation)
- Navbar / Footer
- Modal / Dialog
- Avatar, Badge, Tabs

Prompting a Button

Start tiny. Ask for a button and describe every state: default, hover, disabled. Naming states tells the AI you care about polish.

The more variants you request up front, the more reusable the result.

"Create a reusable primary Button component in React.
Rounded corners, a bold accent-blue background, white text.
Include hover (slightly darker) and disabled (greyed out) states.
Accept the label as a prop so I can reuse it."

Prompting a Card

Cards are everywhere — products, blog posts, profiles. Describe the slots: what goes in the card and in what order.

Tell the AI which parts are images, headings, and actions so the layout comes out right.

"Create a product Card component: a square image on top,
then a bold product title, a short description, a price in the
bottom-left, and an 'Add to cart' button in the bottom-right.
Subtle shadow, rounded corners, lifts slightly on hover."

Prompting a Form

Forms are where details matter most: labels, placeholders, required fields, and error messages. Spell them out.

Good forms also include validation — telling the user when something is wrong. Ask for it explicitly.

"Create a contact form with three fields: Name, Email, and Message.
Each has a label above it. Email shows a red error if it's not valid.
A 'Send' button at the bottom, disabled until all fields are filled.
Clean, modern styling with generous spacing."

Reading the Output (Lightly)

You don't need to write React, but recognizing its shape builds confidence. A component is a function that returns markup. Below is the kind of simple, framework-free version of a button the AI might explain to you.

You can run this snippet — it just logs the label, simulating what a button 'does' when clicked.

function Button(label) {
  return {
    label: label,
    click: function () {
      console.log(label + ' was clicked!');
    }
  };
}

const saveBtn = Button('Save');
saveBtn.click();

Make It Reusable With Props

The word that turns a one-off design into a reusable component is prop (short for 'property') — a value you pass in to customize it.

Ask the AI to make things configurable: label, color, size, icon. Then one Button component covers every button in your app.

"Refactor my Button so it accepts props: label, variant
('primary' | 'secondary' | 'ghost'), size ('sm' | 'md' | 'lg'),
and an optional left icon. Give each variant distinct styling."

Generating Variants in One Shot

Need a whole set? Ask for all variants at once and request a preview gallery so you can see them side by side. Tools like v0 will render every option for you to compare.

"Generate a Badge component with 4 color variants:
success (green), warning (yellow), error (red), and info (blue).
Then show all four side by side in a small preview gallery
so I can compare them."

Combining Components Into a Page

Once you have buttons, cards, and forms, assemble them. Reference the components you already made by name so the AI reuses them instead of inventing new ones.

This keeps your design consistent — the same button everywhere, the same card style across sections.

"Build a product listing page that uses my existing Card component
in a 3-column responsive grid, with my primary Button as the
'Load more' action at the bottom. Reuse the components — don't
create new styles."

Use a Component Library as a Base

Many tools build on top of polished libraries like shadcn/ui. You can lean on these to get accessible, professional components instantly, then restyle them by prompt.

You don't install anything manually in v0 or Lovable — just ask for it.

"Use shadcn/ui components as the foundation. Build a settings panel
with a Card containing toggle switches, a Select dropdown for language,
and a Save button. Match the rest of my app's spacing and colors."

Practice the Component Workflow

Try this loop in v0 or Lovable: generate a single Card, refine it until you love it, then ask for a grid of them. Building bottom-up — small pieces first — gives you far more control than prompting a whole page blindly.

Save prompts that work well; they become your personal component toolkit.

"Create a testimonial Card: a round avatar, the person's name and
role, a star rating, and a quote. Then generate a 3-column grid of
three of these cards with placeholder testimonials."

Quick Check

Why is asking the AI to make a component accept props so useful?

Recap: Components on Demand

You learned to build interfaces in reusable pieces. Prompt for one component at a time — button, card, form — and describe its slots and states. Make components flexible with props, generate variants in one shot, and lean on libraries like shadcn/ui as a base.

Then assemble components into pages by referencing them by name so the AI reuses, not reinvents. Next: making everything beautiful with colors, spacing, and dark mode — all by prompt.

자주 묻는 질문

“구성 요소 생성” 강의는 무료인가요?

네 — “구성 요소 생성” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Vibe Coding 강의 전체를 잠금 해제할 수 있습니다. Vibe Coding 강의에는 총 4개의 강의가 포함되어 있습니다.

“구성 요소 생성”에서 뭘 배우나요?

필요할 때 버튼, 카드와 양식을 만듭니다. 브라우저에서 직접 실행하는 실습 코드로 Vibe Coding을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Vibe Coding을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Vibe Coding은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.

“구성 요소 생성” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Vibe Coding 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Vibe Coding 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 말로 UI 설명하기
  2. 구성 요소 생성
  3. 스타일 지정과 테마 설정
  4. 반응형으로 만들기
← Vibe Coding(으)로 돌아가기