VIBECODING 365 / DICTIONARY
빈 상태
Empty State
DEFINITION
정의
빈 상태는 검색 결과가 없거나, 아직 데이터가 생성되지 않았거나, 필터 조건 때문에 목록이 비어 있을 때 사용자에게 현재 상황과 다음 행동을 설명하는 UI이다. 좋은 빈 상태는 '아무것도 없음'을 방치하지 않고 원인, 해결 방법, 첫 작업 버튼, 예시 데이터를 함께 제시한다. 바이브 코딩에서는 AI가 카드 목록만 만들고 데이터가 0개인 상황을 잊기 쉬우므로, 목록형 기능을 만들 때 빈 상태를 필수 화면으로 요구해야 한다.
참고
공식 표준 용어라기보다 제품 UI 실무에서 널리 쓰이는 패턴이므로 실제 서비스의 목록·검색·온보딩 화면과 함께 설명한다.
ENGLISH
Empty State
EXAMPLE
프로젝트 목록을 AI가 만든 뒤 샘플 데이터가 없을 때 화면이 깨지는지 확인하고, '아직 프로젝트가 없습니다' 안내와 새 프로젝트 만들기 버튼, 필터 초기화 버튼을 보여 주도록 수정하면 초보 사용자도 다음 행동을 바로 이해할 수 있다.
NOTES
공식 표준 용어라기보다 제품 UI 실무에서 널리 쓰이는 패턴이므로 실제 서비스의 목록·검색·온보딩 화면과 함께 설명한다.
관련
이어서 볼 문서
RELATED TERMS
연관 용어
Hot Reload
코드 변경 시 전체 앱을 재시작하지 않고 변경된 부분만 실시간으로 브라우저/앱에 반영하는 개발 기능이다. Hot Module Replacement(HMR)라고도 불리며, 바이브 코딩에서 핵심적인 피드백 루프를 제공한다. AI가 코드를 수정할 때마다 브라우저에서 즉시 결과를 확인할 수 있으므로, '프롬프트 → 코드 생성 → 즉시 시각적 확인'이라는 빠른 반복 주기가 가능하다. 전통적 개발에서는 코드 수정 → 빌드 → 브라우저 새로고침 → 상태 재설정이라는 지루한 과정을 거쳤지만, 핫 리로드는 앱의 현재 상태(로그인 상태, 입력된 폼 데이터 등)를 유지한 채 변경된 부분만 교체하므로 개발 경험이 극적으로 개선된다. Next.js(React), Vite, Remix 등 현대 웹 프레임워크는 핫 리로드를 기본 제공하며, Bolt.new는 이 기능을 활용하여 AI가 코드를 작성하는 동시에 라이브 프리뷰를 실시간 업데이트한다. React Native에서는 Expo Go를 통해 모바일 기기에서도 핫 리로드가 가능하다.
프론트엔드·UI 테일윈드 CSSTailwind CSS
Adam Wathan이 2017년에 만든 유틸리티 퍼스트(utility-first) CSS 프레임워크로, 미리 정의된 작은 CSS 클래스들을 HTML에 직접 조합하여 스타일을 구성하는 방식이다. 전통적 CSS가 '.login-button { background: blue; padding: 8px 16px; ... }'처럼 별도 파일에 클래스를 정의하는 반면, Tailwind는 '<button className="bg-blue-500 py-2 px-4 rounded">'처럼 HTML 안에서 바로 스타일을 적용한다. 바이브 코딩에서 AI가 가장 선호하는 스타일링 방식으로, 그 이유는 HTML과 스타일이 같은 파일에 있어 AI가 컨텍스트를 파악하기 쉽고, 클래스 이름이 스타일 값을 직접 설명하므로(bg-blue-500 = 파란 배경) AI가 의미를 이해하기 쉬우며, 별도의 CSS 파일을 관리할 필요가 없어 멀티파일 수정이 줄어들기 때문이다. v0, Bolt.new 등의 AI UI 빌더가 기본 스타일링 시스템으로 Tailwind를 채택하고 있으며, shadcn/ui 같은 인기 컴포넌트 라이브러리도 Tailwind 기반이다.
프론트엔드·UI 컴포넌트Component
독립적이고 재사용 가능한 UI 구성 요소로, 현대 프론트엔드 개발의 기본 빌딩 블록이다. React, Vue, Svelte 등의 프레임워크에서 UI를 작은 단위로 분리하여 각각 독립적으로 개발·테스트·재사용할 수 있게 하는 아키텍처 패턴이다. 바이브 코딩에서 컴포넌트는 AI가 가장 빈번하게 생성하는 코드 단위이다. '로그인 폼 컴포넌트를 만들어줘', '대시보드 사이드바 컴포넌트를 만들어줘'처럼 컴포넌트 단위로 요청하면 AI가 독립적으로 동작하는 UI 블록을 생성한다. 이는 바이브 코딩의 강점과 한계를 동시에 보여주는데, AI는 개별 컴포넌트 생성은 잘하지만 컴포넌트 간의 상태 관리, 데이터 흐름, 이벤트 전파 등 '컴포넌트 간 관계'는 상대적으로 약한 경향이 있다. shadcn/ui, Radix UI, Material UI 같은 컴포넌트 라이브러리를 CLAUDE.md에 명시하면, AI가 프로젝트의 디자인 시스템에 맞는 일관된 컴포넌트를 생성하는 데 도움이 된다.