이 가이드는 신규 사용자와 숙련된 사용자 모두가 Lovable에서 빠르게 작업을 시작하고 일반적인 함정을 피하는 데 도움을 줍니다.
본 가이드는 아래 Lovable "Best Practices" 사이트를 번역/정리한 내용입니다.
참고 부탁드립니다.
⭐ Check out original source ⭐
https://docs.lovable.dev/tips-tricks/best-practice
왜 중요한가: Knowledge file
은 프로젝트의 두뇌입니다. 모든 프롬프트와 함께 전송되어 AI가 전체 맥락을 이해하는 데 도움을 줍니다.
아래 그림과 같이 프로젝트가 따라야 할 기본적인 Ground Rule을 세팅해둘 수 있습니다.
포함할 내용:
Lovable의 Chat 모드를 사용하면, Knowledge file을 자동 생성할 수 있습니다:
# 영문 프롬프트
Generate knowledge for my project at T=0 based on the features I’ve already implemented.
💡 (참고) "my project at T=0"이란?
T=0
은 시점 0, 즉 현재 시점을 의미합니다. 이는 소프트웨어 개발과 버전 관리에서 사용되는 시간 표기법입니다:
T=0
: 현재 상태 (지금 이 순간의 프로젝트)T-1
: 한 단계 이전 상태T-2
: 두 단계 이전 상태T+1
: 다음 단계 예정 상태- Lovable에서는 모든 편집이 커밋(commit)으로 저장되기 때문에, 각 버전을 시간 순서로 참조할 수 있습니다.
# 한글 프롬프트
이미 구현한 기능을 바탕으로 T=0에서 내 프로젝트에 대한 knowledge를 생성해주세요.
Clear, verbose prompts = better output
"명확하고 상세한 프롬프트 = 더 나은 결과물"을 의미합니다. AI를 엔지니어링 파트너처럼 생각하세요—당신이 말하는 것만 알 수 있습니다.
프롬프트 작성 팁:
구체적으로 작성: 정확한 페이지(예: /dashboard)와 예상되는 동작을 언급하세요.
자연어 사용:
# 영문 프롬프트
I want users with the role Investor to access this component, but not Admins.
# 한글 프롬프트
Investor 역할의 사용자는 이 컴포넌트에 접근할 수 있지만, Admin은 접근할 수 없도록 해야 합니다.
스크린샷 추가: 특히 버그나 UX 이슈를 설명할 때 유용합니다.
(eg. 특정 컴포넌트를 제공하며, 여기 OOO하게 변경해줘.)
가드레일 추가: AI에게 건드리지 말아야 할 것을 알려주면, 이를 고려하여 수정을 진행합니다.
(eg.해당 경로에 있는 파일들은 변경하지마.)
# 영문 프롬프트
Do not edit /shared/Layout.tsx.
# 한글 프롬프트
/shared/Layout.tsx는 편집하지 마세요.
중요한 지시사항을 프롬프트 전반에 반복.
한 번에 5가지를 구현하려고 하지 마세요.
(예시) 기능 분해 템플릿:
# 영문 프롬프트
**Feature Breakdown Template:**
Create the new page
Add UI layout
Connect the data
Add logic + edge cases
Test per role
# 한글 프롬프트
1. 새 페이지 생성
2. UI 레이아웃 추가
3. 데이터 연결
4. 로직 + 엣지 케이스 추가
5. 역할별 테스트
앱에 사용자별로 여러 역할(예: Admin, Investor, Startup)이 구분/정의되어 있다면, 항상 요청하는 프롬프트가 어떤 역할에 적용되는지 정의하세요.
# 영문 프롬프트
As an Investor, I want to view the company dashboard, but I shouldn’t be able to edit it.
Please isolate this feature to the Investor role only.
# 한글 프롬프트
Investor로서, 회사 대시보드를 보고 싶지만 편집할 수는 없어야 합니다.
이 기능을 Investor 역할에만 격리해주세요.
Chat mode
는 당신의 AI Co-pilot(부조종사)입니다.
Chat Mode로 전환해야 할 때:
Suggest 3 ways to implement [X]
[X]를 구현하는 3가지 방법을 제안해주세요.
워크플로우 팁:
만약 초반에, Chat mode를 사용하는 것을 잊었다면,
아래 형식으로 LLM에게 요청하여 출력 일관성을 개선하고 부수적인 편집을 방지할 수 있습니다.
On page /settings, implement [feature]. The expected behavior is [XYZ].
Please don’t touch component A, layout B, or shared logic unless necessary.
Follow best practices from Tailwind / Supabase / X.
/settings 페이지에서 [기능]을 구현해줘.
예상되는 동작은 [XYZ]야. 필요하지 않다면 컴포넌트 A, 레이아웃 B, 또는 공유 로직은 건드리지 말아줘.
Tailwind / Supabase / X의 모범 사례를 따라줘.
원치 않는 코드 실행을 방지하려면:
아래 형식으로 LLM에게 요청하여, 코드 실행을 방지할 수 있습니다.
Investigate but don’t write code yet.
조사는 하되 아직 코드는 작성하지 마세요.
Suggest 3 ways to solve this without changing anything.
아무것도 변경하지 않고 이것을 해결하는 3가지 방법을 제안해주세요.
이런식으로 변경을 사전에 방지하여, 제어권을 유지할 수 있습니다.
또한, AI가 "루프"에 빠졌을 때,
끝없는 버그 수정 사이클을 피하기 위해 다음 순서를 사용할 수 있습니다:
Please investigate this without breaking other features.
If needed, revert to the last working version and fix from there.
다른 기능을 망가뜨리지 않고 이것을 조사해주세요.
필요하다면 마지막 작동 버전으로 되돌리고 거기서부터 수정해주세요.
Supabase는 Firebase의 오픈소스 대안으로, PostgreSQL 기반 데이터베이스와 실시간 기능을 제공하는 백엔드 서비스입니다.
Lovable과 연동하면 이 기능들을 별도의 서버 설정이나 보일러플레이트 코드 없이 바로 활용할 수 있습니다.
Supabase는 분명히 강력하고 편리한 도구이지만, 그렇다고 해서 마냥 안심하고 써도 된다는 뜻은 아닙니다. 실제 서비스 환경에서는 몇 가지 주의해야 할 점들이 있습니다.
💡 주의사항
💯 모범 사례
Please validate the SQL schema at T=0 and ensure no breaking changes have occurred.
T=0에서 SQL 스키마를 검증하고 파괴적인 변경사항이 없었는지 확인해주세요.
앱을 만들다 보면 코드 수정이나 프롬프트 호출까지는 필요 없지만, 버튼 색상이나 제목 문구처럼 작은 UI 요소를 빠르게 고치고 싶을 때가 많습니다. 이럴 때 바로 활용할 수 있는 기능이 Lovable의 Visual Edit기능입니다.
Visual Edit
은 프로젝트 화면에서 원하는 요소를 직접 클릭해 즉시 수정할 수 있는 도구로, 텍스트
·색상
·폰트
·레이아웃 조정
과 같은 단순한 변경에 적합합니다.
다음과 같은 경우 프롬프트 대신 Visual-edit을 사용하면 좋습니다:
Lovable에서 일어나는 모든 편집은 곧 하나의 Git 커밋이라고 생각할 수 있습니다.
북마크(Bookmarks)로 안정 버전 표시
변경 비교: 버전 간 차이를 확인하고 싶을 때는 AI에게 직접 비교를 요청할 수 있습니다.
예를 들어:
Compare version at T–1 to T–0. What changed? What might be breaking?
T-1 버전과 T-0을 비교해줘. 무엇이 변경되었고, 무엇이 망가졌을 수 있을까?
AI가 변경 내역을 요약해주기 때문에, 필요 시 안정된 버전으로 되돌아가는 판단이 빨라집니다.
GitHub 통합의 장점: Lovable은 프로젝트를 자동으로 GitHub 저장소와 동기화합니다.
브랜치 사용 주의
많은 사용자가 깨닫는 것: 두 번째에는 모든 것을 다시 하는 것이 더 적은 시간이 걸립니다.
🔁 Remix는 현재 프로젝트의 상태를 그대로 복제하여 새로운 사본을 만드는 기능입니다.
Remix는 사실상 “T=0에서 프로젝트의 깨끗한 사본을 다시 시작하는 것”으로,
사용 사례
Remix 하는 방법
Project Settings로 이동
Remix 옵션 선택
현재 워크스페이스에 원본과 동일한 사본이 생성되며, 이 사본은 독립적으로 수정 가능합니다.
(참고) 내 프로젝트뿐 아니라 다른 사용자의 공개 프로젝트도 Remix할 수 있습니다.
중요 제약 사항
AI는 어떤 순간에는 마법처럼 느껴지지만, 또 어떤 순간에는 답답하고 좌절스러울 수 있습니다.
💡 황금 규칙:
- 프롬프트에 시간을 들이세요.
- 모든 것을 다시 확인하세요.
- 작업을 작고 테스트 가능한 블록으로 나누세요.
- 입력이 정확할수록 출력이 더 좋아집니다.
긴 프롬프트를 입력할 때는 음성 받아쓰기를 활용해보세요.
"나는 좌절하고 있어...(I am frustrated…)
"라는 프롬프트 패턴을 활용하면, 내가 막힌 부분에 대해 AI가 더 집중해서 대응할 수 있습니다.
큰 편집을 한 뒤에는 반드시 여러 역할(Role)과 그 동작을 다시 확인하세요. 특히 조건부 로직이 들어간 경우는 꼼꼼한 점검이 필수입니다.
안정된 버전을 북마크(Bookmarks)로 저장해 두면 빠른 디버깅이 가능합니다.
예상치 못한 부작용이 보인다면, 지나치게 일반적인 로직 때문에 생긴 버그일 가능성이 높습니다.
특정 역할을 위해서는 전용 컴포넌트를 만드는 것이 좋습니다.
다음에도 바이브 코딩 팁 시리즈로 찾아뵙겠습니다 :)
읽어주셔서 감사합니다 😸