HRD×AI 라운지 · 자료 013 · 바이브코딩 2부

AI 스튜디오로 바이브코딩 ②
— 응답이 진짜로 쌓이게 만들기

1부의 설문 앱은 내 브라우저에만 저장됩니다. 진짜 설문으로 쓰려면 «모두의 응답이 모이는 창고»가 있어야 합니다. 한국어 한 문단으로 2분 30초에 붙였고, 직접 제출해서 집계까지 확인했습니다.

2026-09-16 실제로 연동하며 촬영 · 3부작 중 2부 · 제출·집계 검증 완료 · 무료 한도 안내 포함
1부에서 이어집니다

«내 화면에서만 돌아가는 앱»을 벗어납니다

1부에서 설문 앱을 만들었습니다. 그런데 거기까지는 응답이 내 브라우저에만 저장됩니다. 다른 사람이 쓰면 그 사람 브라우저에 따로 쌓이고, 내가 창을 지우면 사라집니다. 진짜 설문으로는 못 씁니다.

필요한 것은 «모두의 응답이 한곳에 모이는 창고»입니다. 그게 데이터베이스이고, AI 스튜디오는 Firebase라는 구글 서비스를 버튼 한 번으로 붙여 줍니다.

이 자료에서 실제로 한 것

말로만 설명하지 않았습니다. Firebase를 붙이고 → 설문을 직접 제출하고 → 관리자 화면에 숫자가 뜨는 것까지 확인했습니다. 그 화면을 그대로 싣습니다.

제가 직접 설문을 한 건 제출한 뒤의 관리자 화면입니다. «총 설문 응답 수 1명 · 전체 평균 4.00 · 우수 만족 비율 100%». 제 응답이 서버에 저장되고 통계로 집계된 것입니다.
결과제가 직접 설문을 한 건 제출한 뒤의 관리자 화면입니다. «총 설문 응답 수 1명 · 전체 평균 4.00 · 우수 만족 비율 100%». 제 응답이 서버에 저장되고 통계로 집계된 것입니다.
1부까지 (브라우저 저장)2부 이후 (Firebase)
어디에 쌓이나내 브라우저 안구글 서버
여러 명이 쓰면각자 따로 쌓임한곳에 모임
창을 지우면사라짐남아 있음
-무료로 시작 (뒤에 한도 설명)
따라 하기

1단계 — «Firebase 붙여 줘»라고 말하면 됩니다

1부에서 만든 앱을 열고, 아래 입력칸에 이렇게 적으십시오. 설정 화면을 뒤질 필요가 없습니다.

Firebase 연동 요청 — 그대로 복사
Firebase Firestore를 연동해서 설문 응답이 실제로 저장되게 해 줘.

- 응답은 surveys 컬렉션에 저장
- 각 응답에 교육명, 응답자 이름·부서, 제출 시각을 함께 저장
- 관리자 대시보드는 Firestore에서 읽어오게 해 줘
- 저장에 실패하면 사용자에게 알려주고 다시 시도할 수 있게 해 줘
요청하면 이런 카드가 뜹니다. «데이터베이스를 연결해 기기 간에 데이터를 저장하세요 — 무료로 시작(Get started at no cost)». 파란 «Enable Firebase Firestore» 버튼을 누르면 됩니다.
요청하면 이런 카드가 뜹니다. «데이터베이스를 연결해 기기 간에 데이터를 저장하세요 — 무료로 시작(Get started at no cost)». 파란 «Enable Firebase Firestore» 버튼을 누르면 됩니다.

약관 동의가 뜹니다. Firebase 이용약관에 동의하는 절차입니다. 동의하면 AI가 «Firebase terms accepted, continue setting up database»라고 스스로 적고 다음 단계로 넘어갑니다.

따라 하기

2단계 — 기다립니다. 2~3분 걸립니다

완료된 화면입니다. «Ran for 149s» — 2분 30초 걸렸습니다. 만들어진 파일은 firestore.rules, src/firebase.ts, src/App.tsx 세 개이고, «Set up Firebase»와 «Built»가 체크되어 있습니다.
완료된 화면입니다. «Ran for 149s» — 2분 30초 걸렸습니다. 만들어진 파일은 firestore.rules, src/firebase.ts, src/App.tsx 세 개이고, «Set up Firebase»와 «Built»가 체크되어 있습니다.

AI가 스스로 정리해 준 내용이 화면 왼쪽에 나옵니다. 요약하면 이렇습니다.

한 일내용
저장 위치를 만듦응답을 surveys 창고에 넣도록 설정. 제출 시각도 함께 저장
실시간 반영관리자 화면이 새로고침 없이 새 응답을 받아 옵니다
오류 처리저장에 실패하면 화면에 알려주고 다시 시도할 수 있게
보안 규칙firestore.rules 파일을 만들어 누가 읽고 쓸 수 있는지를 정해 둡니다
여기서 놀라실 부분

보통 이 작업은 개발자가 반나절 걸립니다. 프로젝트 만들고, 키 발급받고, SDK 설치하고, 보안 규칙 쓰고… 그걸 2분 30초에, 한국어 한 문단으로 끝냈습니다.

확인하기

3단계 — 진짜로 저장되는지 직접 넣어 봅니다

가장 중요한 단계입니다. 만들었다고 끝이 아니라, 넣어 보고 나오는지 확인하셔야 합니다.

3-1

이렇게 해보십시오

  1. 오른쪽 미리보기에서 직접 설문을 작성합니다 (이름·부서·문항 전부)
  2. «설문 제출하기»를 누릅니다 → «설문이 제출되었습니다» 화면이 나오면 성공
  3. 상단 «관리자 통계»로 넘어가 숫자가 올라갔는지 봅니다

저는 «홍길동 / 인재개발팀»으로 한 건 넣었고, 관리자 화면에 응답 1명 · 평균 4.00이 떴습니다. 이게 뜨면 서버에 저장된 것입니다.

안 되면 — 화면에 빨간 오류가 뜨면 그 문장을 그대로 복사해서 아래 입력칸에 붙여넣고 «이 오류 고쳐 줘»라고 하십시오. 대부분 보안 규칙 문제라 AI가 바로 고칩니다.

오류가 났을 때
설문을 제출했더니 아래 오류가 납니다. 고쳐 줘.

(여기에 오류 문장을 붙여넣으세요)
알아두기

4단계 — 내 데이터가 어디에 있는지

Firebase는 구글 계정 안에 «프로젝트»를 하나 만들어 거기에 창고를 둡니다. console.firebase.google.com 에서 직접 보실 수 있습니다.

Firebase 콘솔의 프로젝트 목록입니다. AI 스튜디오가 만든 것에는 «AI Studio» 배지가 붙습니다.
Firebase 콘솔의 프로젝트 목록입니다. AI 스튜디오가 만든 것에는 «AI Studio» 배지가 붙습니다.
프로젝트 안의 Cloud Firestore 화면. AI 스튜디오가 만든 데이터베이스(ai-studio-로 시작하는 이름)가 보입니다. 여기서 응답이 쌓이는 것을 눈으로 확인하실 수 있습니다.
프로젝트 안의 Cloud Firestore 화면. AI 스튜디오가 만든 데이터베이스(ai-studio-로 시작하는 이름)가 보입니다. 여기서 응답이 쌓이는 것을 눈으로 확인하실 수 있습니다.
키는 코드에 박히지 않습니다

«연결 정보가 코드에 그대로 노출되는 것 아니냐»는 걱정을 하십니다. 실제 파일을 열어 보면 그렇지 않습니다.

만들어진 src/firebase.ts 입니다. apiKey, projectId 같은 값이 직접 적혀 있지 않고 import.meta.env.VITE_FIREBASE_... 형태의 «환경변수»로 들어갑니다. 값은 따로 보관됩니다.
만들어진 src/firebase.ts 입니다. apiKey, projectId 같은 값이 직접 적혀 있지 않고 import.meta.env.VITE_FIREBASE_... 형태의 «환경변수»로 들어갑니다. 값은 따로 보관됩니다.

그래도 반드시 하실 일 — Firebase API 키는 Firebase 서비스에만 쓰이도록 제한해 두는 것이 원칙입니다. 사내에 배포하기 전에 정보시스템 부서에 firestore.rules 파일을 보여주십시오. «누가 읽고 쓸 수 있는가»가 거기 적혀 있습니다.

돈 이야기

얼마나 쓸 수 있나 — 무료 한도

결제 수단 없이 시작합니다. 구글이 공개한 무료 한도는 아래와 같습니다.

항목무료 한도
저장 데이터1GiB
하루 쓰기(응답 저장)40,000회
하루 읽기(대시보드 조회)50,000회
월 네트워크 사용량10GiB
교육담당자 기준으로 환산하면

설문 응답 한 건이 «쓰기 1회»입니다. 하루 4만 건이면 사내 전 직원이 하루에 다 제출해도 남습니다. 돈 걱정은 안 하셔도 됩니다. 한도는 매일 자정(태평양 시간)에 초기화됩니다.

막힐 때

저희가 실제로 겪은 문제와 해결

증상해결
«An internal error occurred»가
계속 뜬다
모델을 Flash-Lite로 바꾸십시오(1부 참고) ② 그래도 나면 10분쯤 쉬었다가 다시 하십시오. 짧은 시간에 요청을 많이 보내면 막힙니다 — 저희는 15번쯤 보내고 막혔다가, 쉬고 나니 한 번에 됐습니다
한 번 실패한 앱에서
계속 실패한다
그 앱은 버리고 새로 만드십시오. 첫 빌드가 깨지면 이후 요청이 전부 깨집니다
작업이 오래 걸린다Firebase 붙이는 데 2~3분은 정상입니다. «Running for ○○s»가 돌면 건드리지 마십시오
콘솔에 데이터가 안 보인다프로젝트가 여러 개면 다른 프로젝트를 보고 계신 겁니다. 앱이 쓰는 프로젝트 이름을 AI에게 물어보십시오
내 데이터 위치를 확인할 때
이 앱이 지금 쓰고 있는 Firebase 프로젝트 이름과 데이터베이스 이름을 알려 줘. 콘솔에서 어디로 들어가면 응답을 볼 수 있는지도 알려 줘.
다음 편

3부에서 할 일

2부까지 하시면 응답이 서버에 쌓입니다. 그런데 교육담당자에게는 아직 하나가 빠졌습니다 — 결과를 엑셀로 보는 것입니다.

하는 일끝나면
1부말로 앱 만들기설문 앱이 돌아갑니다
2부
이 자료
Firebase 연결응답이 서버에 쌓입니다
3부구글 시트 연동 · 배포응답이 시트로 들어오고, 주소만 주면 직원들이 씁니다
확인 시점

언제 무엇으로 확인했나

화면 캡처
2026-09-16, 실제로 연동하고 설문을 제출하며 촬영
연동 소요
149초 (firestore.rules · src/firebase.ts · src/App.tsx 생성)
검증
설문 1건 직접 제출 → 관리자 화면에 «응답 1명 · 평균 4.00» 집계 확인
무료 한도
Firebase 공식 문서 (저장 1GiB · 일 쓰기 4만 · 일 읽기 5만)

화면과 버튼 이름은 자주 바뀝니다. 안내와 달라 보이면 «Firebase», «데이터베이스», «Firestore» 라는 말이 있는 버튼을 찾으십시오.