포천시 교육정책과 직무연수
2026. 07. 30. THU 18:00

바이브코딩을 활용한 업무역량강화 연수

실습 과제 — 사업계획서 한 건으로 사업 안내 홈페이지 만들기

코드는 한 줄도 직접 쓰지 않습니다. 지금 맡고 계신 사업의 계획서 한 건을 가져오시면, 두 시간 뒤에는 주민이 휴대폰으로 읽는 안내 페이지가 인터넷에 올라가 있습니다. 신청·문의를 온라인으로 받는 창구까지 함께 만듭니다.

DATE
7월 30일 목요일18:00 ~ 20:00 · 120분
WHO
교육정책과 직원10여 명 · 1인 1노트북
HOW
이론 20 · 실습 80전 과정 따라 하기
RESULT
안내 페이지 1개연수 종료 시점에 게시 완료

강사 · 포천시청소년재단 인재육성실장 유중원

Ⅰ   연수 소개

붙임파일 대신, 링크 하나로

지금까지 공고는 한글 파일을 붙임으로 올려 두는 방식이었습니다. 주민은 파일을 내려받아야 하고, 휴대폰에서는 잘 열리지 않습니다. 이번 연수는 그 한 건을 링크 하나로 열리는 한 장짜리 안내문으로 바꾸는 방법을 다룹니다.

BEFORE

공고문 + 붙임 한글파일

  • 주민이 파일을 내려받아야 읽을 수 있음
  • 휴대폰에서 열리지 않거나 글씨가 깨짐
  • 신청은 다시 전화·방문·이메일로 따로
  • 몇 명이 신청했는지 손으로 집계
AFTER · 오늘 만드는 것

링크 하나로 열리는 안내 페이지

  • 문자에 주소만 붙이면 바로 열림
  • 휴대폰 화면 기준으로 제작, 표도 넘치지 않음
  • 맨 아래 버튼 하나로 신청·문의 접수
  • 접수 내역은 표에 한 줄씩 쌓이고 엑셀로 내려받기
Ⅱ   연수 목표

두 시간 뒤에 남는 것

손에 남는 결과물인터넷에 게시되어 누구나 접속 가능한 사업 안내 페이지 1개, 그리고 신청·문의를 받는 접수 창구
익히는 능력 ①생성형 AI에게 업무 요구사항을 정확히 전달하는 방법 — 숫자로 말하기, 한 파일로 묶기, 오류는 통째로 붙여넣기
익히는 능력 ②사업계획서에서 대외 공개가 가능한 항목과 그렇지 않은 항목을 구분하는 판단
익히는 능력 ③생성형 AI가 계획서에 없는 내용을 만들어 내지 않도록 지시하고, 결과를 원문과 대조하는 습관
확장 적용주민이 한 번에 읽는 안내문 설계 원칙 — 다른 공고·안내 업무에 그대로 적용
전제 조건코딩 경험 없음을 기본으로 합니다. 문서 작성과 엑셀을 다루는 정도면 충분합니다
Ⅲ   운영 원칙

아무도 낙오하지 않게

이 연수의 성패는 기능을 몇 개 다루느냐가 아니라, 끝까지 같은 화면을 보며 따라오느냐에 달려 있습니다.

한 단계 = 한 동작
강사 시연 → 참석자 실행 → 전원 확인. 모두 같은 화면이 된 것을 확인한 뒤 다음으로 넘어갑니다.
우리말 비유를 먼저
도구의 역할을 자리·서랍·액자·경비원으로 먼저 설명하고, 제품 이름은 나중에 붙입니다.
타이핑 부담 제거
모든 프롬프트와 명령어는 복사용으로 미리 배포합니다. 받아 적을 일이 없습니다.
낙오 방지
단계별 완성본 파일을 강사가 보유합니다. 늦어지면 받아서 다음 단계에 바로 합류합니다.
2인 1조 짝 실습
옆자리와 짝을 지어 서로 화면을 확인하고, 강사는 순회하며 개별 지원합니다.
실패해도 되는 분위기
오류가 나는 것이 정상입니다. 오류 메시지를 그대로 물어보는 것 자체가 오늘의 학습 목표입니다.
Ⅹ   연수 후 업무 적용

‘무엇을 안내할 것인가’만 바꾸면 됩니다

오늘 만든 틀은 계획서가 있는 업무라면 어디든 그대로 적용됩니다.

공모·보조사업 공고

붙임파일 대신 링크 하나로 안내, 휴대폰에서 바로 열람

평생학습 강좌 수강신청

강좌 소개와 접수를 한 페이지에서 처리, 전화 문의 감소

행사 안내와 참가 신청

문자 발송 시 링크 첨부, 참가자 자동 집계

위원 공모·채용 안내

자격 요건과 제출 서류를 알아보기 쉽게 정리

주민 의견 수렴

설명 자료와 의견 접수를 한 곳에서 진행

사업 결과 보고

성과 사진과 수치를 한 장으로 정리하여 상시 공유

Ⅳ   사용 도구

네 개면 충분합니다

전부 무료이고, 설치할 프로그램은 하나도 없습니다. 브라우저만 있으면 됩니다.

01 가게 자리와 간판 CLOUDFLARE PAGES

만든 파일을 인터넷에 올려, 누구나 접속할 수 있는 주소를 만들어 줍니다. 서버도 도메인 구매도 예산 집행도 없습니다.

02 접수 창구 장부 SUPABASE

신청·문의가 들어오면 표에 한 줄씩 기록하고 보관합니다. 인터넷에 있는 엑셀 표라고 생각하시면 됩니다.

03 포스터 액자 POSTIMAGES

사업 포스터를 올려두고 안내 페이지에 붙일 수 있는 이미지 주소를 발급합니다.

04 야간 경비원 UPTIME ROBOT

5분 간격으로 페이지를 확인하고, 열리지 않으면 담당자에게 메일을 보냅니다.

사업계획서  →  공개할 내용 골라내기 · 사람  →  AI 안내문 정리 및 페이지 제작  →  Cloudflare 인터넷 게시  →  주민 열람  →  Supabase 신청·문의 접수
상단 이미지는 PostImages에서 불러오고, 페이지가 살아 있는지는 Uptime Robot이 상시 지켜봅니다.

네 단계 중 사람이 직접 판단해야 하는 것은 두 번째 하나뿐이며, 이번 연수의 무게중심도 여기에 있습니다.
Ⅴ   세부 진행계획

120분의 흐름

참석자 진행 속도에 따라 실습 시간은 조정될 수 있습니다. 지연 시 실습 6은 강사 시연으로 대체하고 사후 개별 지원합니다.

18:00~18:10

여는 이야기10분

완성 결과물 시연, 바이브코딩의 개념과 오늘의 목표 확인

18:10~18:18

개념 잡기8분

4개 도구의 역할과 계획서가 페이지가 되기까지의 흐름

18:18~18:28

실습 1 · 공개 판단10분

사업계획서에서 대외 공개가 가능한 내용만 골라내기 — 오늘 유일하게 사람이 판단하는 단계

18:28~18:40

실습 2 · 안내문 정리12분

AI에 넣어 주민 언어로 항목별 안내문 뼈대 뽑기 (프롬프트 ①)

18:40~18:48

실습 3 · 이미지8분

PostImages에 사업 포스터 업로드 후 주소(Direct link) 확보

18:48~18:56

휴식8분

계정·파일 문제 개별 지원

18:56~19:16

실습 4 · 바이브코딩20분

프롬프트 작성 원칙 학습 후 AI로 안내 홈페이지 생성 (프롬프트 ②)

19:16~19:33

실습 5 · 접수 연결17분

Supabase 접수 테이블 생성·권한 설정, 신청·문의 폼 연결 (프롬프트 ③)

19:33~19:52

실습 6 · 배포와 감시19분

Cloudflare Pages 업로드 및 주소 발급, Uptime Robot 감시 등록

19:52~20:00

마무리8분

공개 전 확인 절차, 업무 적용, 질의응답

Ⅵ   단계별 실습

실습 따라하기

연수에서 사용하는 프롬프트와 명령어를 전부 올려 두었습니다. 제목을 누르면 펼쳐지고, 복사 버튼을 누르면 그대로 AI 채팅창에 붙여넣을 수 있습니다. 연수에 오지 못하셨더라도 이 순서대로만 하시면 페이지 한 장은 만들어집니다.

오늘 유일하게 사람이 직접 판단해야 하는 단계입니다. 계획서를 펼쳐 놓고, 무엇을 덜어낼지 직접 짚어 봅니다.

  • 계획서를 열어 메모장에 통째로 복사합니다 (한글·워드는 Ctrl+A → Ctrl+C)
  • 아래 기준에 따라 덜어낼 내용을 지웁니다
  • 남은 내용을 소리 내어 읽어 보고, 주민이 바로 이해하기 어려운 문장에 표시해 둡니다
  • 확정되지 않은 숫자·일정에는 ※ 표시를 남겨, 다음 단계에서 AI가 확정된 것처럼 쓰지 않도록 합니다
남길 것덜어낼 것
사업명, 사업 기간예산 재원과 편성 내역
신청 자격내부 검토 의견
지원 내용과 금액아직 확정되지 않은 사항
신청 기간과 방법심사위원 후보 명단
제출 서류담당자 개인 휴대전화
심사 기준과 절차타 부서 협의 경과
추진 일정 · 문의처(부서 대표번호)전년도 문제 사례 등 내부 참고 사항
판단 기준 — “이 문장이 시 홈페이지 공고문에 그대로 실려도 괜찮은가?”
SUCCESS메모장에 남은 내용에 예산 재원·내부 검토 의견이 하나도 없다

공문 말투를 주민이 알아듣는 말로 바꾸고, 주민이 궁금해하는 순서대로 항목을 재배치하는 단계입니다.

프롬프트 ①  안내문 정리
아래는 우리 부서 사업계획서에서 대외 공개가 가능한 부분만 추린 내용이야.
이걸 주민이 읽을 사업 안내문으로 정리해줘.

1. 아래 순서로 항목을 나눠줘
   한 줄 요약(30자 이내) / 누가 신청하나 / 무엇을 지원받나 /
   언제까지 어떻게 신청하나 / 무엇을 내야 하나 / 어떻게 뽑나 / 문의처
2. 공문 말투를 주민이 알아듣는 말로 바꿔줘 (예: '~하고자 함' → '~합니다')
3. 한 문장에 한 가지 정보만 담아줘
4. 계획서에 없는 내용은 절대 지어내지 말고, 빠진 항목은 '계획서에 없음'이라고 적어줘
5. ※ 표시가 붙은 것은 미확정이니 그대로 두고 '확정 후 안내 예정'이라고 써줘

--- 계획서 내용 ---
(여기에 실습 1에서 정리한 내용을 붙여넣기)
4번과 5번이 이 프롬프트의 핵심입니다. 생성형 AI는 문장을 매끄럽게 다듬는 과정에서 계획서에 없는 숫자나 조건을 만들어 낼 수 있습니다.
  • 결과가 나오면 반드시 원문과 대조합니다. ‘계획서에 없음’으로 표시된 항목은 담당자가 직접 채우거나 페이지에서 제외합니다
  • 말투가 어색하면 “더 쉬운 말로”, “문장을 더 짧게”라고 다시 지시합니다
SUCCESSAI가 정리한 안내문이 7개 항목으로 나뉘어 있고, 없는 항목은 ‘계획서에 없음’으로 표시돼 있다
  • postimages.org 로그인 후 ‘Choose images’로 사업 포스터·홍보물을 업로드합니다
  • 업로드 결과 중 ‘Direct link’(https://i.postimg.cc/… 형식)를 복사해 메모장에 보관합니다
  • 학습 포인트 — 내 PC의 이미지는 남이 볼 수 없습니다. 인터넷에 올려 ‘주소’를 만들어야 화면에 표시됩니다
유의 — 주소를 아는 사람은 누구나 열람할 수 있으므로, 아직 공고 전인 포스터나 시안은 올리지 않습니다.
SUCCESS메모장에 https://i.postimg.cc/ 로 시작하는 주소가 적혀 있다

AI에게 요구사항을 전달하는 3가지 원칙을 먼저 익힙니다 — 숫자로 말하기 · 한 파일로 묶기 · 오류는 통째로 붙여넣기.

프롬프트 ②  안내 홈페이지 만들기
위에서 정리한 내용으로 사업 안내 홈페이지를 index.html 파일 하나로 만들어줘.

1. HTML·CSS·JavaScript를 한 파일에 모두 넣을 것
2. 맨 위 큰 제목 : (사업명)
3. 제목 아래 이 포스터 이미지 : (PostImages에서 받은 주소)
4. 그 아래 마감일을 가장 크고 눈에 띄게 : (신청 마감일)
5. 항목 순서는 위에서 정리한 순서 그대로
6. 지원 유형·금액은 표로 만들되, 휴대폰에서 가로로 넘치지 않게 해줘
7. 휴대폰 화면 기준. 본문 18px 이상, 제목 28px 이상, 색은 차분한 남색 계열
8. 맨 아래에 '신청·문의하기' 버튼 1개
9. 내용은 위에서 정리한 것만 쓰고 새로운 문장을 지어내지 마
10. 설명은 빼고 전체 코드만 줘
  • 받은 코드를 메모장에 붙여넣고 ‘index.html’로 저장합니다 (파일 형식은 ‘모든 파일’) → 더블클릭하여 확인
  • 마음에 들지 않으면 “제목을 더 크게”, “표를 카드 모양으로”처럼 다시 지시합니다
대조 확인 — 화면이 완성되면 숫자·날짜·금액이 계획서 원문과 일치하는지 눈으로 대조합니다.
SUCCESS저장한 index.html을 더블클릭하면 안내 페이지가 뜨고, 마감일이 가장 크게 보인다
  • New project 생성 — 이름 pocheon-apply, 지역 Northeast Asia / Seoul, 비밀번호는 별도 보관
  • SQL Editor에서 아래 명령을 붙여넣고 실행하여 접수 테이블을 만듭니다
SQL  접수 테이블 생성
create table applications (
  id bigint generated always as identity primary key,
  org text,                -- 단체·모임 이름
  name text not null,      -- 신청자 성함
  phone text not null,     -- 연락처
  type text,               -- 신청 유형
  memo text,               -- 문의 내용
  created_at timestamptz default now()
);

alter table applications enable row level security;
create policy "anyone can apply" on applications
  for insert to anon with check (true);
  • Settings → API 에서 Project URLanon public 키를 복사해 보관합니다
학습 포인트 — 위 설정으로 외부에서는 ‘신청서 넣기(쓰기)’만 가능하고 ‘접수 내역 조회(읽기)’는 차단됩니다. 신청자 개인정보를 보호하는 핵심 장치입니다.

절대 금지 — service_role 키는 모든 제한을 무시하는 관리자 키입니다. 웹페이지 코드·메신저·메일·AI 채팅창 어디에도 넣지 않습니다.
프롬프트 ③  신청·문의 접수 연결
맨 아래 '신청·문의하기' 버튼을 누르면 입력 칸이 열리고 Supabase에 저장되게 해줘.

- CDN 방식 @supabase/supabase-js@2 사용
- Project URL : (Supabase에서 복사한 주소)
- anon key : (Supabase에서 복사한 anon public 키)
- 테이블 이름 : applications / 컬럼 : org, name, phone, type, memo
- type은 (신청 유형 선택지) 중에서 고르게 해줘
- 저장 성공 시 초록색 큰 글씨로 안내, 실패 시 빨간 글씨로 '다시 시도해 주세요' 표시
- 연락처는 숫자만 입력되게 할 것

수정된 전체 코드를 처음부터 끝까지 다시 줘.
SUCCESS내 화면에서 ‘홍길동 / 010-0000-0000’으로 시험 신청 → Supabase Table Editor에 그 줄이 보인다
  • index.html을 폴더(예: notice)에 담아 준비합니다
  • Cloudflare → Workers & Pages → Create → Pages → Upload assets 선택
  • 프로젝트 이름 입력(영문 소문자·하이픈만) 후 폴더를 끌어다 놓고 Deploy
  • 발급된 주소(예: https://pocheon-village.pages.dev)를 휴대폰에서 직접 열어 확인합니다
  • Uptime Robot → New monitor → HTTP(s) → 이름과 주소 입력 → 점검 주기 5분, 알림 메일 지정 후 저장
학습 포인트 — 서버 구축·도메인 구매·예산 집행 없이 즉시 게시가 가능하며, 수정 시 같은 프로젝트에 재업로드하면 주소는 그대로 유지됩니다. 신청 마감일에 페이지가 멈추면 곧바로 민원이 됩니다. 담당자가 아니라 시스템이 먼저 알아채도록 해 둡니다.
SUCCESS휴대폰으로 pages.dev 주소를 열면 노트북과 같은 화면이 보이고, Uptime Robot 목록에 초록색(Up)으로 표시된다
막혔을 때 순서
① F12 → Console 탭의 빨간 글씨를 통째로 복사해 AI에게 붙여넣고 물어본다.
② 두 번 물어봐도 안 되면 옆자리 짝과 화면을 비교한다 (대개 복사·붙여넣기 과정에서 한 글자가 빠져 있습니다).
③ 그래도 안 되면 손을 든다. 강사가 해당 단계의 완성본 파일을 드리므로 다음 단계에 바로 합류할 수 있습니다.

막히는 것은 실패가 아닙니다. 오늘 배우는 것의 절반은 ‘막혔을 때 물어보는 법’입니다.
Ⅶ   공개 전 확인 절차

만드는 데 20분, 되돌리는 데는 훨씬 오래

대외 공개 문서입니다. 기존 공고문과 동일한 절차를 따릅니다. 체크하며 확인해 보세요.

0 / 8 확인
Ⅷ   접수 자료의 관리

신청자 성명과 연락처는 개인정보입니다

동의 문구개인정보 수집·이용 동의 문구를 신청 폼에 함께 표시합니다 — 수집 항목, 이용 목적, 보유기간, 거부 시 불이익
최소 수집접수와 연락에 필요한 최소한으로 한정합니다. 주민등록번호·상세주소·생년월일은 받지 않습니다
조회 경로접수 내역은 담당자 계정으로 Supabase에 직접 접속해 확인합니다. 웹페이지에서 조회되도록 만들지 않습니다
사전 협의동의 문구와 보유기간은 게시 전 개인정보 보호 담당 부서와 협의합니다
파기보유기간이 지나면 Supabase에서 자료를 삭제하고, 더 쓰지 않는 프로젝트는 프로젝트 자체를 삭제합니다
Ⅸ   사전 준비사항

연수 시작 전까지 이것만

아래 회원가입과 계획서 1건 준비는 반드시 연수 시작 전까지 완료되어 있어야 합니다. 사이트는 모두 무료이며, 가입에는 전부 합쳐 15분 정도 걸립니다. 가입만 해 주시면 됩니다 — 프로젝트 생성·설정은 연수 시간에 함께 합니다.

0 / 10 준비 완료
계획서 고르는 기준 — ○ 이미 확정된 사업, 곧 공고할 사업  /  ✕ 검토 중이거나 확정되지 않은 사업, 예산 협의가 끝나지 않은 사업, 대내 문서.
마땅한 계획서가 없으시면 강사가 배포하는 「실습용_예시_사업계획서.docx」(2026년 마을교육공동체 활동 지원사업, 가상)를 쓰셔도 됩니다.
별첨   낯선 말 10개

오늘 나오는 영어는 이게 전부입니다

외우실 필요 없습니다. 모르는 말이 나오면 여기만 보시면 됩니다.

바이브코딩
AI에게 말로 설명해서 프로그램을 만드는 방식
프롬프트
AI에게 시키는 말. 지시문이라고 생각하시면 됩니다
HTML 파일
웹 화면 한 장이 담긴 파일. 더블클릭하면 브라우저에서 열립니다
배포 (Deploy)
내 컴퓨터의 파일을 인터넷에 올려 다른 사람도 볼 수 있게 하는 일
주소 (URL)
인터넷에서 그 화면을 찾아가는 길 이름
데이터베이스
인터넷에 있는 엑셀 표. 신청·문의 내용이 한 줄씩 쌓입니다
반응형
휴대폰·PC 화면 크기에 맞춰 내용이 저절로 정리되는 것
API 키
그 창고의 문을 여는 열쇠 역할을 하는 긴 문자열
콘솔 (F12)
브라우저가 남기는 기록장. F12를 누르면 열리고 오류가 빨간 글씨로 뜹니다
캐시
브라우저가 기억해 둔 예전 화면. 고쳤는데 그대로면 Ctrl + F5
신청   APPLICATION

연수 신청하기

아래 항목을 남겨 주시면 참석자 명단에 반영되고, 준비물 안내와 실습용 예시 계획서를 보내 드립니다. 정원이 있으므로 부서 내 참석 예정자는 미리 신청해 주시기 바랍니다.

신청 안내

일시
2026. 7. 30.(목) 18:00 ~ 20:00
대상
포천시 교육정책과 직원 10여 명
준비물
노트북 1대 · 사업계획서 1건 · 4개 사이트 가입
신청 마감
연수 시작 전까지 (정원 도달 시 조기 마감)
문의
포천시청소년재단 인재육성실
유중원 실장

이 신청 폼은 연수 실습 5에서 만드는 접수 창구와 똑같은 구조로 되어 있습니다. 오늘 여러분이 만들 것이 바로 이것입니다.

교육정책과

숫자만 입력하시면 연락처의 하이픈(-)은 자동으로 붙습니다. 준비물 안내 문자를 보내 드리는 용도로만 사용합니다.