Prompts

프롬프트 골라 쓰기

강의에서 실제로 쓴 요청문을 상황별로 모았습니다. 복사해서 AI 도구에 붙여넣고 [대괄호] 안만 내 상황으로 바꾸거나, 실제 작성 사례 탭을 눌러 완성된 형태를 바로 확인하세요.

🚀실제 완성 웹페이지 샘플 6종

프롬프트로 만든 실제 완성 웹페이지를 확인해보세요

Claude Code에게 프롬프트를 요청하여 완성한 실제 동작하는 라이브 데모입니다.

  1. 01
    고른다
    지금 하려는 일에 맞는 카드를 찾고
  2. 02
    붙여넣는다
    AI 코딩 도구의 대화창에
  3. 03
    바꾼다
    [대괄호] 안을 내 프로젝트 내용으로
기획

기획 인터뷰 시키기

아이디어는 있는데 무엇부터 정해야 할지 모를 때

보기:
나는 "반려식물 맞춤 물주기 알림 웹앱"을 만들려고 해.
기획서를 완성할 수 있게 나에게 질문을 하나씩 해줘.
순서: 핵심 사용자(한 사람) → 그 사람의 문제 → 핵심 기능 3개 → 성공 기준 → 안 만들 것.
내 답이 모호하면 더 구체적으로 되물어줘. 다 끝나면 PLAN.md로 정리해줘.
기획

기능을 한 입 조각으로 쪼개기

기능이 너무 커서 어디서 시작할지 모를 때

보기:
PLAN.md의 핵심 기능 "식물 등록 및 물주기 알림"을
'한 번의 대화로 완성되고 브라우저에서 눈으로 확인 가능한' 조각으로 쪼개줘.
- 1단계: 빈 식물 목록 화면 UI와 '식물 추가' 버튼 (/plants)
- 2단계: 가짜(mock) 데이터 3종 카드로 카드 배치 확인
- 3단계: 식물 추가 모달 폼과 로컬 state 연결
- 4단계: Supabase plants 테이블 연동 및 실제 저장
결과를 TODO.md에 체크박스 목록으로 추가해줘. 아직 코드는 쓰지 마.
기획

선택지 먼저 듣기

어떻게 만들지 감이 안 올 때 — 코드부터 나오는 걸 막기

보기:
사용자가 결제하지 않고도 매일 카카오톡으로 물주기 알림을 받게 하는 방법을 3가지 알려줘.
각 방법마다: 한 줄 설명 / 장점 / 단점 / 입문자 난이도(상·중·하).
아직 코드는 쓰지 말고, 내가 고르면 그때 만들어줘.
화면

컴포넌트 하나 만들기

새 화면 조각을 만들 때의 기본형

보기:
PricingCard 컴포넌트를 src/components/에 만들어줘.

[동작]
- 월 19,000원 프로 플랜과 무료 플랜 2종 요금제 카드 비교
- 프로 플랜 카드 상단에 "가장 인기" 추천 뱃지 강조
- '시작하기' 버튼 클릭 시 결제 안내 모달 열림

[하지 말 것]
- 다른 파일은 건드리지 마. page.tsx에 배치만 해줘.
- 새 라이브러리 설치하지 마.
- 스타일은 Tailwind로 최소한만. DESIGN.md가 있으면 따라줘.

완료되면 브라우저에서 확인하는 방법을 3단계로 알려줘.
화면

빈 상태·로딩·에러 상태 채우기

기능은 되는데 화면이 허전하거나 로딩 중에 멈춘 것처럼 보일 때

[컴포넌트/화면 이름]에 세 가지 상태를 추가해줘.
1. 로딩 중: 실제 내용과 같은 모양의 회색 skeleton
2. 비어 있음: "[안내 문구]" 한 줄과 "[행동 버튼 문구]" 버튼
3. 에러: 빨간 글씨로 메시지와 "다시 시도" 버튼
기존 구조와 스타일은 유지하고, 상태 처리만 추가해줘.
화면

폰 화면 점검

PC에서는 괜찮은데 폰에서 깨질 때

모든 화면을 375px 너비(아이폰 기준)에서 점검해서 고쳐줘.
- 가로 스크롤이 생기지 않게
- 버튼은 최소 높이 44px, 터치 영역 확보
- 본문 글자는 최소 16px
- 여러 열 배치는 폰에서 한 열로
고친 파일과 무엇을 바꿨는지 목록으로 알려줘.
화면

디자인 규칙대로 다시 입히기

DESIGN.md를 만든 뒤 화면 하나씩 정리할 때

DESIGN.md 규칙에 맞게 [파일 경로] 화면만 다시 스타일해줘.
- 구조와 기능은 바꾸지 말고 색·글꼴·간격만
- 강조색은 버튼과 링크에만
- 간격은 DESIGN.md에 적힌 값만 사용
- 다른 파일은 건드리지 마
데이터·API

테이블 설계 부탁하기

Supabase에 어떤 테이블과 컬럼을 만들지 모를 때

PLAN.md의 기능을 위해 필요한 데이터베이스 테이블을 설계해줘.
- 테이블마다: 이름 / 컬럼(이름, 타입, 설명) / 다른 테이블과의 관계
- 모든 테이블에 id, created_at, user_id 포함
- 지금 필요한 최소한만. 나중을 위한 컬럼은 넣지 마.
Supabase SQL Editor에 붙여넣을 수 있는 CREATE TABLE 문도 같이 줘.
RLS 정책은 "로그인한 사용자가 자기 user_id 행만" 기준으로.
데이터·API

외부 API를 서버 라우트로 감싸기

API 키를 브라우저에 노출하지 않고 외부 서비스를 부를 때

src/app/api/[이름]/route.ts를 만들어줘.
- POST로 { [입력 필드] }를 받는다
- process.env.[키 이름]으로 [외부 API]를 호출한다
- 응답을 { [출력 필드] } 형태로 정리해서 반환한다
- 입력이 비었거나 API가 실패하면 400/500과 { error: "메시지" }
- 키는 절대 클라이언트로 보내지 않는다
다른 파일은 건드리지 말고, 터미널에서 curl로 테스트하는 명령을 알려줘.
데이터·API

CRUD 한 세트 만들기

테이블 하나에 대한 만들기·읽기·고치기·지우기를 붙일 때

[테이블 이름] 테이블에 대한 CRUD를 만들어줘.
- 목록 화면 /[경로]: 최신순, 로그인한 사용자 것만
- 추가: [입력 필드] 폼 → insert → 목록 갱신
- 수정: 항목 클릭 → 같은 폼으로 편집 → update
- 삭제: 확인창 뒤 delete
- 각 동작 후 성공/실패를 화면에 짧게 표시
Supabase 클라이언트는 src/lib/supabase.ts를 재사용해줘.
디버깅

버그 보고 기본형

뭔가 안 될 때 — "안 돼" 대신 이 형식으로

[증상] 
[기대] 
[재현 순서] 1.  2.  3. 
[에러 메시지] (콘솔/터미널에서 그대로 복사)

[최근 변경] 
원인을 먼저 설명하고, 고치기 전에 무엇을 바꿀지 알려줘. 한 번에 하나만 고쳐줘.
디버깅

세 번 실패했을 때

같은 버그를 여러 번 고쳐도 안 될 때

이 문제로 지금까지 [N]번 시도했는데 아직 안 돼.
잠깐 멈추고:
1. 지금까지 시도한 것과 결과를 정리해줘
2. 원인이 될 수 있는 것을 3가지 나열해줘 (가능성 높은 순)
3. 각 원인을 확인하는 방법을 알려줘
아직 코드는 고치지 마. 내가 확인 결과를 알려줄게.
디버깅

상태를 눈에 보이게

에러 없이 그냥 이상하게 동작할 때

[파일/함수]에서 [값 이름]이 실제로 어떤 값인지 확인하고 싶어.
[시점: 예 - API 응답 직후 / 버튼 클릭 직후]에 console.log로 해당 값과 타입을 출력해줘.
로그 앞에 "[DEBUG]" 표시를 붙여서 나중에 찾기 쉽게.
확인이 끝나면 "DEBUG 로그 지워줘"라고 할게.
코드 정리

이 파일 뭐 하는 거야?

AI가 만든 파일을 읽어보고 싶을 때

[파일 경로]를 읽고 코딩을 모르는 사람에게 설명하듯 알려줘.
- 이 파일이 하는 일 한 줄
- 기억하는 값(state)이 몇 개이고 각각 무엇인지
- 사용자 행동에 반응하는 곳이 어디인지
- 다른 파일과 어떻게 연결되는지
코드는 인용하지 말고 말로만.
코드 정리

기능 안 바꾸고 정리만

파일이 너무 길어지거나 같은 코드가 여러 곳에 있을 때

[파일 경로]를 정리해줘.
- 기능과 화면은 1픽셀도 바뀌면 안 돼
- 200줄이 넘으면 의미 단위로 컴포넌트를 분리
- 같은 코드가 두 번 이상 나오면 함수로 묶기
- 안 쓰는 import, 변수, 주석 삭제
정리 후 무엇을 어디로 옮겼는지 목록으로 알려주고, 확인 방법도 알려줘.
코드 정리

커밋 전 셀프 리뷰

커밋하기 전 AI에게 한 번 훑게 할 때

git diff로 지금 바뀐 내용을 보고 리뷰해줘.
- 의도하지 않은 변경이 섞여 있는지
- 비밀 키나 개인정보가 코드에 들어갔는지
- 명백한 버그나 빠진 에러 처리
- 삭제해도 되는 디버그 코드
문제가 없으면 커밋 메시지를 한국어로 한 줄 제안해줘. 아직 커밋은 하지 마.
배포·운영

빌드 에러 고치기

npm run build 또는 Vercel 배포가 실패할 때

npm run build가 실패했어. 에러는 아래와 같아.

[에러 붙여넣기]

기능은 바꾸지 말고 빌드가 통과하게만 고쳐줘.
타입 에러라면 any로 덮지 말고 정확한 타입으로.
배포·운영

환경변수 점검

로컬은 되는데 배포에서만 안 될 때

로컬에서는 되는데 Vercel 배포에서만 [증상]이 생겨.
1. 코드에서 process.env.로 읽는 환경변수를 전부 찾아 목록으로 만들어줘
2. 각각 NEXT_PUBLIC_ 접두사가 맞게 붙어 있는지 확인해줘
3. .env.local에 있는 것과 비교해서 Vercel에 추가해야 할 목록을 알려줘
값은 출력하지 말고 이름만.
배포·운영

예약 작업 뼈대

매일/매주 자동으로 돌아가는 작업을 만들 때

[주기, 예: 매일 아침 8시 KST]에 실행되는 Vercel Cron을 추가해줘.
- src/app/api/cron/[이름]/route.ts
- CRON_SECRET 환경변수로 외부 호출 차단
- 지금은 실행 로그만 남기고, 실제 동작은 TODO 주석으로
- vercel.json 설정 포함
Vercel 대시보드에서 실행 기록을 확인하는 방법도 알려줘.
문서·글쓰기

규칙 파일(CLAUDE.md) 만들기

프로젝트를 새로 시작할 때

PLAN.md를 읽고 이 프로젝트의 CLAUDE.md를 만들어줘.
항목: 프로젝트 소개 / 기술 스택 / 작업 규칙 / 하지 말 것 / 자주 쓰는 명령
작업 규칙에 반드시 포함:
- 요청한 파일만 수정, 다른 파일은 먼저 물어보기
- 새 라이브러리는 이유 설명 후 허락받고 설치
- 완료 후 확인 방법 3단계 안내
- 설명은 한국어로 짧게, 코드 먼저
문서·글쓰기

README 쓰기

저장소를 남에게 보여주기 전에

이 프로젝트의 README.md를 써줘.
- 한 줄 소개 + 배포 주소
- 주요 기능 3개 (스크린샷 자리 표시)
- 로컬 실행 방법 (설치, 환경변수 이름, 실행 명령)
- 기술 스택
- 폴더 구조 간단히
한국어로, 짧게. 마케팅 문구는 빼고.
문서·글쓰기

변경 사항 정리

사용자에게 업데이트 내용을 알릴 때

최근 [N]개 커밋(git log)을 보고 사용자에게 보여줄 업데이트 안내를 써줘.
- 개발 용어 없이, 사용자가 체감하는 변화 위주로
- "새로운 기능 / 개선 / 고친 문제" 세 묶음
- 각 항목 한 줄, 전체 10줄 이내