LIVE W1 챌린지 진행 중 — 이번 주 일요일 23:59 마감 지금 제출 →
시즌 1 · 2025

시즌 1 챌린지

4주 동안, 매주 하나의 프로젝트를 만들고 배포합니다. 완벽함보다 완성이 먼저입니다.
아래에서 각 주차의 공식 명세서를 확인하세요.

🌐
Week 1 진행 중 입문
나를 소개하는 단 하나의 페이지
기간: 이번 주 월요일 ~ 일요일 23:59
📋
챌린지 개요
Section 01 — Overview

나의 이야기·경험·관심사를 담은 퍼스널 웹사이트를 만들고 인터넷에 직접 배포하세요. 기술 스택 제한 없음. 완벽함보다 완성이 먼저입니다. URL 하나를 세상에 내놓는 경험이 첫 주의 전부입니다.

🎯
학습 목표
Section 02 — Objectives
1
HTML/CSS 구조 이해 — 웹 페이지의 뼈대인 HTML과 스타일을 담당하는 CSS의 기본 구조를 익힙니다.
2
반응형 레이아웃 — Flexbox 또는 Grid를 활용해 모바일과 데스크톱 모두에서 깔끔하게 보이는 레이아웃을 구성합니다.
3
Cloudflare Pages 배포 경험 — 파일을 배포하면 Cloudflare가 *.pages.dev URL을 자동으로 만들어 줍니다. 드래그&드롭, GitHub 자동 연동, AI 생성+배포 세 가지 방법 중 하나로 실제로 접근 가능한 나만의 URL을 발급받습니다. 직접 구매한 도메인이 있다면 커스텀 도메인 연결도 가능합니다.
필수 요구사항
Section 03 — Requirements
단일 페이지 구성 — SPA 또는 단순 HTML 파일로 나를 소개하는 단일 페이지를 만드세요.
Cloudflare Pages 배포 — URL 발급
아래 방법 중 하나로 배포하면 Cloudflare가 URL을 자동으로 생성합니다. 별도 신청 없이 배포 완료와 동시에 발급됩니다.
☁️ 방법 A — 드래그&드롭 → URL 즉시 발급 🐙 방법 B — GitHub 연동 → Push마다 자동 배포 🤖 방법 C — AI 생성 → Cloudflare 자동 감지
발급되는 URL 형식: 내-프로젝트-이름.pages.dev
자신이 구매한 도메인이 있다면 커스텀 도메인 연결도 가능합니다. (예: myportfolio.com)
최소 콘텐츠 포함 — 이름, 관심사, 한 줄 자기소개를 반드시 포함하세요.
기본 반응형 — 모바일(375px 기준)에서도 레이아웃이 깨지지 않아야 합니다.
📤
제출 형식
Section 04 — Submission Format
항목 내용
프로젝트 제목 나의 사이트를 대표하는 한 줄 제목 (예: "김민준의 포트폴리오")
한 줄 설명 이 프로젝트가 무엇인지 한 문장으로 (최대 80자)
배포 URL 실제로 접근 가능한 HTTPS 링크 (필수)
기술 스택 사용한 언어·프레임워크·배포 플랫폼 (쉼표 구분)
프로젝트 소개 어떻게 만들었는지, 어떤 부분에서 고민했는지 (300자 이내)
한 줄 회고 이번 주에 배운 것 또는 아쉬운 점 한 문장
⚖️
평가 기준
Section 05 — Evaluation
🚀
완료 여부
배포된 URL이 실제로 존재하고 접근 가능한가
40%
개성 표현
나만의 목소리·취향·스토리가 느껴지는가
30%
👥
커뮤니티 투표
익명 투표, 주차당 1인 최대 5표
30%

* 점수가 같을 경우 제출 시각이 빠른 순으로 정렬합니다.

🛠️
권장 기술 스택
Section 06 — Recommended Stack
🌐 HTML5 입문
🎨 CSS3 / Flexbox / Grid 입문
JavaScript (선택) 선택
☁️ Cloudflare Pages 배포 필수
🐙 GitHub (선택) 소스

React, Vue, Svelte 등 프레임워크를 사용해도 좋습니다. 단, 기술보다 완성에 집중하세요. Cloudflare Pages는 HTML 파일을 드래그&드롭만 해도 배포됩니다.

☁️
Cloudflare Pages 배포 가이드
Section 07 — Deployment Guide

배포(Deploy)란 내 컴퓨터에만 있던 파일을 인터넷 서버에 올려 전 세계 누구나 URL로 접근할 수 있게 만드는 과정입니다.
처음엔 낯설지만 한 번 해보면 정말 별거 아닙니다. 아래 세 가지 방법 중 편한 것을 선택하세요.

파일을 브라우저에 던지기만 하면 됩니다. 코드 한 줄 없이 가능한 가장 빠른 방법입니다.
단, 파일을 수정할 때마다 다시 올려야 합니다. 자동화를 원한다면 방법 B를 추천합니다.
1
Cloudflare 계정 만들기
dash.cloudflare.com 접속 → "Sign up" 버튼 → 이메일 주소 + 비밀번호 입력 → "Create Account" → 받은 편지함에서 인증 링크 클릭
💡 팁: 이미 계정이 있다면 "Log in"으로 바로 들어가세요. Google 계정으로 소셜 로그인도 됩니다.
성공: 대시보드 화면에 "Welcome to Cloudflare" 또는 계정 이름이 보이면 정상입니다.
2
Pages 메뉴 찾기
대시보드 왼쪽 메뉴에서 "Workers & Pages"를 클릭 → 화면 상단 "Pages" 탭 클릭 → 오른쪽 파란색 "Create a project" 버튼 클릭
⚠️ 주의: "Workers" 탭이 아니라 반드시 "Pages" 탭이어야 합니다. 메뉴 구조가 비슷해서 헷갈릴 수 있습니다.
3
Direct Upload 선택 & 프로젝트 이름 짓기
"Create a project" 화면에서 "Direct Upload" 탭 클릭 (기본은 Git 연동으로 되어 있습니다) → "Project name" 입력란에 이름 입력 → "Create Project" 클릭
💡 팁: 프로젝트 이름이 곧 URL이 됩니다. 예: my-portfoliomy-portfolio.pages.dev
영문 소문자·숫자·하이픈(-)만 사용 가능합니다. 한글, 특수문자, 공백은 안 됩니다.
4
파일 업로드
점선으로 된 업로드 영역에 내 컴퓨터의 HTML 파일 또는 프로젝트 폴더를 드래그해서 놓으세요.
⚠️ 주의: index.html 파일이 반드시 최상위에 있어야 합니다. "my-site" 폴더 안에 index.html이 있다면 my-site 폴더째로 올리세요. index.html이 두 단계 안에 들어가 있으면 페이지가 열리지 않습니다.
성공: 파일 목록이 나타나고 index.html이 보이면 준비된 것입니다.
5
배포 실행
파일 목록이 정상적으로 보이면 "Deploy site" 버튼을 클릭하세요. 20~40초 정도 기다려 주세요. 진행 바가 채워집니다.
성공: "Success" 또는 초록색 체크 표시와 함께 배포 완료 화면이 나타납니다.
6
내 사이트 방문하기
화면에 표시된 URL(예: my-portfolio.pages.dev)을 클릭하세요. 브라우저에서 내가 만든 페이지가 보이면 성공입니다! 이 URL을 복사해서 카카오톡·디스코드로 공유해 보세요.
💡 팁: 반영이 느릴 때는 브라우저에서 Ctrl+Shift+R (Mac: Cmd+Shift+R) 로 강제 새로고침하세요.
수정 후 재배포하는 방법
사이트를 수정한 뒤 다시 올리는 방법:
1. Cloudflare 대시보드 → Pages → 내 프로젝트 클릭
2. "Deployments" 탭 → "Create new deployment" 버튼
3. 수정된 파일을 다시 드래그&드롭 → "Deploy site"
→ 30초 후 변경사항이 반영됩니다.
자주 묻는 질문
Section 08 — FAQ
네, W1은 입문 난이도로 설계되었습니다. HTML 파일 하나만 만들어도 충분합니다. 에디터(VS Code)를 설치하고 메모장처럼 작성한 HTML을 GitHub Pages에 올리는 것만으로 조건을 충족합니다.
챌린지 기간 중 새로 만들거나, 기존 것을 이번 주 크게 개선한 경우라면 괜찮습니다. 하지만 변경 사항이 거의 없는 오래된 프로젝트 그대로 제출하는 것은 커뮤니티 정신에 맞지 않습니다.
물론입니다. 기술 스택에는 제한이 없습니다. 다만 W1의 핵심은 "완성된 URL"이므로, 복잡한 스택 때문에 배포를 완료하지 못하는 상황을 피하세요.
마감 후 제출은 리더보드 점수에 포함되지 않습니다. 하지만 커뮤니티 피드에는 올라가며 피드백을 받을 수 있습니다. 완성 자체가 가장 중요합니다.
마감 전까지는 제출 페이지에서 수정 가능합니다. 마감 이후에는 커뮤니티 Discord에서 운영진에게 요청해 주세요.
Week 2 🔒 잠김 성장
인터랙션으로 차별화하라
기간: 2주차 월요일 ~ 일요일 23:59
📋
챌린지 개요
Section 01 — Overview

사용자와 '대화하는' 앱을 만드세요. Todo·메모·타이머·계산기 등 어떤 주제든 좋습니다. 중요한 건 당신만의 킥(Kick) 하나 — 한 문장으로 설명할 수 있는 차별화 포인트가 있어야 합니다.

🎯
학습 목표
Section 02 — Objectives
1
JavaScript 이벤트 처리 — 클릭·입력·키보드 이벤트를 다루는 패턴을 익힙니다.
2
상태 관리 — 앱의 데이터 흐름과 UI 동기화 원리를 이해합니다.
3
LocalStorage — 브라우저 저장소를 활용해 데이터를 영속화합니다.
4
컴포넌트 설계 — 재사용 가능한 UI 단위로 코드를 구조화합니다.
필수 요구사항
Section 03 — Requirements
상태가 있는 인터랙티브 앱 — 사용자 입력에 반응하는 UI를 구현하세요.
LocalStorage 데이터 유지 — 새로고침 후에도 데이터가 남아있어야 합니다.
모바일 반응형 — 모든 기능이 모바일에서도 작동해야 합니다.
나만의 킥 — 한 문장으로 설명 가능한 차별화 포인트를 제출 폼에 명시하세요.
⚖️
평가 기준
Section 05 — Evaluation
동작 여부
핵심 기능이 에러 없이 작동하는가
30%
💡
킥의 창의성과 선명함
차별화 포인트가 명확하고 독창적인가
35%
💻
코드 완성도
가독성, 구조, 에러 처리
15%
👥
커뮤니티 투표
익명 투표, 주차당 1인 최대 5표
20%
🛠️
권장 기술 스택
Section 06 — Recommended Stack
Vanilla JS입문
⚛️React중급
💚Vue 3중급
📤
제출 형식
Section 04 — Submission Format
항목 내용
프로젝트 제목 앱을 대표하는 한 줄 제목
한 줄 설명 이 앱이 무엇인지 한 문장으로 (최대 80자)
배포 URL 실제로 접근 가능한 HTTPS 링크 (필수)
나만의 킥(Kick) 한 문장으로 설명 가능한 차별화 포인트 (제출폼 "한 줄 소개"에 기입)
기술 스택 사용한 언어·프레임워크·배포 플랫폼
프로젝트 소개 어떤 문제를 해결하는지, 킥이 왜 특별한지 (300자 이내)
한 줄 회고 이번 주 배운 것 또는 아쉬운 점 한 문장
☁️
Cloudflare Pages 배포 가이드
Section 07 — Deployment Guide

배포(Deploy)란 내 컴퓨터에만 있던 파일을 인터넷 서버에 올려 전 세계 누구나 URL로 접근할 수 있게 만드는 과정입니다.
처음엔 낯설지만 한 번 해보면 정말 별거 아닙니다. 아래 두 가지 방법 중 편한 것을 선택하세요.

파일을 브라우저에 던지기만 하면 됩니다. 코드 한 줄 없이 가능한 가장 빠른 방법입니다.
단, 파일을 수정할 때마다 다시 올려야 합니다. 자동화를 원한다면 방법 B를 추천합니다.
1
Cloudflare 계정 만들기
dash.cloudflare.com 접속 → "Sign up" 버튼 → 이메일 주소 + 비밀번호 입력 → "Create Account" → 받은 편지함에서 인증 링크 클릭
💡 팁: 이미 계정이 있다면 "Log in"으로 바로 들어가세요. Google 계정으로 소셜 로그인도 됩니다.
성공: 대시보드 화면에 "Welcome to Cloudflare" 또는 계정 이름이 보이면 정상입니다.
2
Pages 메뉴 찾기
대시보드 왼쪽 메뉴에서 "Workers & Pages"를 클릭 → 화면 상단 "Pages" 탭 클릭 → 오른쪽 파란색 "Create a project" 버튼 클릭
⚠️ 주의: "Workers" 탭이 아니라 반드시 "Pages" 탭이어야 합니다. 메뉴 구조가 비슷해서 헷갈릴 수 있습니다.
3
Direct Upload 선택 & 프로젝트 이름 짓기
"Create a project" 화면에서 "Direct Upload" 탭 클릭 (기본은 Git 연동으로 되어 있습니다) → "Project name" 입력란에 이름 입력 → "Create Project" 클릭
💡 팁: 프로젝트 이름이 곧 URL이 됩니다. 예: my-appmy-app.pages.dev
영문 소문자·숫자·하이픈(-)만 사용 가능합니다. 한글, 특수문자, 공백은 안 됩니다.
4
파일 업로드
점선으로 된 업로드 영역에 내 컴퓨터의 HTML 파일 또는 프로젝트 폴더를 드래그해서 놓으세요.
⚠️ 주의: index.html 파일이 반드시 최상위에 있어야 합니다. "my-site" 폴더 안에 index.html이 있다면 my-site 폴더째로 올리세요. index.html이 두 단계 안에 들어가 있으면 페이지가 열리지 않습니다.
성공: 파일 목록이 나타나고 index.html이 보이면 준비된 것입니다.
5
배포 실행
파일 목록이 정상적으로 보이면 "Deploy site" 버튼을 클릭하세요. 20~40초 정도 기다려 주세요. 진행 바가 채워집니다.
성공: "Success" 또는 초록색 체크 표시와 함께 배포 완료 화면이 나타납니다.
6
내 사이트 방문하기
화면에 표시된 URL을 클릭하세요. 브라우저에서 내가 만든 페이지가 보이면 성공입니다! 이 URL을 복사해서 카카오톡·디스코드로 공유해 보세요.
💡 팁: 반영이 느릴 때는 브라우저에서 Ctrl+Shift+R (Mac: Cmd+Shift+R) 로 강제 새로고침하세요.
수정 후 재배포하는 방법
사이트를 수정한 뒤 다시 올리는 방법:
1. Cloudflare 대시보드 → Pages → 내 프로젝트 클릭
2. "Deployments" 탭 → "Create new deployment" 버튼
3. 수정된 파일을 다시 드래그&드롭 → "Deploy site"
→ 30초 후 변경사항이 반영됩니다.
자주 묻는 질문
Section 09 — FAQ
LocalStorage는 브라우저를 닫아도 데이터가 남고, sessionStorage는 탭을 닫으면 사라집니다. W2에서는 새로고침 후 데이터가 유지되어야 하므로 LocalStorage를 사용하세요.
아닙니다. Vanilla JS로도 충분히 훌륭한 인터랙티브 앱을 만들 수 있습니다. 오히려 프레임워크 없이 DOM 조작을 직접 경험하는 것이 학습에 더 좋을 수 있습니다.
괜찮습니다. 중요한 건 "한 문장으로 명확하게 설명할 수 있는가"입니다. "다크모드를 지원하는 Todo 앱"처럼 구체적이면 충분합니다.
W1과 마찬가지로, 이번 주 새로 만들거나 크게 개선한 경우에만 인정됩니다.
🌍
Week 3 🔒 잠김 성장
외부 세계와 연결하기
기간: 3주차 월요일 ~ 일요일 23:59
📋
챌린지 개요
Section 01 — Overview

혼자 돌아가는 앱을 넘어 외부 API와 연결하세요. 날씨·지도·뉴스·AI·금융 등 어떤 외부 서비스를 연동하든 좋습니다.

🎯
학습 목표
Section 02 — Objectives
1
REST API 연동 — fetch 또는 axios로 외부 데이터를 가져옵니다.
2
비동기 처리 — Async/Await 패턴으로 비동기 코드를 깔끔하게 작성합니다.
3
에러 핸들링 — 네트워크 오류·로딩·빈 상태를 사용자 친화적으로 처리합니다.
4
환경변수 관리 — API 키를 코드에 노출하지 않고 안전하게 관리합니다.
필수 요구사항
Section 03 — Requirements
외부 API 1개 이상 — 오픈 API 또는 AI API와 실시간 연동하세요.
3가지 UX 상태 처리 — 로딩, 에러, 빈 상태를 UI로 명확하게 표시하세요.
HTTPS 배포 — 보안 연결을 통해 배포하세요.
🛠️
권장 기술 스택
Section 06 — Recommended Stack
🌐Fetch API / Axios기본
🤖OpenAI / GeminiAI
☁️OpenWeatherMap무료
🐙GitHub API무료
📤
제출 형식
Section 04 — Submission Format
항목 내용
프로젝트 제목 앱을 대표하는 한 줄 제목
한 줄 설명 이 앱이 무엇인지 한 문장으로 (최대 80자)
배포 URL 실제로 접근 가능한 HTTPS 링크 (필수)
연동한 API 사용한 외부 API 이름 및 서비스명
기술 스택 사용한 언어·프레임워크·배포 플랫폼
프로젝트 소개 어떤 외부 데이터를 어떻게 활용했는지 (300자 이내)
한 줄 회고 비동기 처리에서 겪은 경험 한 문장
⚖️
평가 기준
Section 05 — Evaluation
🌐
API 연동 완성도
실제 외부 데이터가 화면에 표시되는가
35%
3가지 UX 상태 처리
로딩·에러·빈 상태가 모두 구현되었는가
25%
🔒
API 키 보안
코드에 API 키가 노출되지 않았는가
20%
👥
커뮤니티 투표
익명 투표, 주차당 1인 최대 5표
20%
☁️
Cloudflare Pages 배포 가이드
Section 07 — Deployment Guide

배포(Deploy)란 내 컴퓨터에만 있던 파일을 인터넷 서버에 올려 전 세계 누구나 URL로 접근할 수 있게 만드는 과정입니다.
처음엔 낯설지만 한 번 해보면 정말 별거 아닙니다. 아래 두 가지 방법 중 편한 것을 선택하세요.

파일을 브라우저에 던지기만 하면 됩니다. 코드 한 줄 없이 가능한 가장 빠른 방법입니다.
단, 파일을 수정할 때마다 다시 올려야 합니다. 자동화를 원한다면 방법 B를 추천합니다.
1
Cloudflare 계정 만들기
dash.cloudflare.com 접속 → "Sign up" 버튼 → 이메일 주소 + 비밀번호 입력 → "Create Account" → 받은 편지함에서 인증 링크 클릭
성공: 대시보드 화면에 "Welcome to Cloudflare" 또는 계정 이름이 보이면 정상입니다.
2
Pages 메뉴 찾기
대시보드 왼쪽 메뉴에서 "Workers & Pages"를 클릭 → 화면 상단 "Pages" 탭 클릭 → 오른쪽 파란색 "Create a project" 버튼 클릭
⚠️ 주의: "Workers" 탭이 아니라 반드시 "Pages" 탭이어야 합니다.
3
Direct Upload 선택 & 프로젝트 이름 짓기
"Direct Upload" 탭 클릭 → "Project name" 입력 → "Create Project" 클릭
💡 팁: 프로젝트 이름이 곧 URL이 됩니다. 영문 소문자·숫자·하이픈(-)만 사용 가능합니다.
4
파일 업로드
점선으로 된 업로드 영역에 HTML 파일 또는 프로젝트 폴더를 드래그해서 놓으세요.
⚠️ 주의: index.html 파일이 반드시 최상위에 있어야 합니다. 폴더 안에 있다면 폴더째로 올리세요.
성공: 파일 목록이 나타나고 index.html이 보이면 준비된 것입니다.
5
배포 실행 & 내 사이트 확인
"Deploy site" 버튼 클릭 → 20~40초 대기 → 완료 후 표시된 URL 클릭하여 확인
성공: "Success" 또는 초록색 체크 표시와 함께 배포 완료 화면이 나타납니다.
수정 후 재배포하는 방법
1. Cloudflare 대시보드 → Pages → 내 프로젝트 클릭
2. "Deployments" 탭 → "Create new deployment" 버튼
3. 수정된 파일을 다시 드래그&드롭 → "Deploy site"
→ 30초 후 변경사항이 반영됩니다.
자주 묻는 질문
Section 09 — FAQ
절대 안 됩니다. GitHub에 올리는 순간 전 세계에 공개됩니다. 무료 티어도 악용되면 요금이 발생할 수 있습니다. Cloudflare Workers를 프록시로 사용하거나, 공개 API(키 불필요)를 선택하는 것이 이번 주 핵심 학습 포인트입니다.
OpenWeatherMap(날씨·무료티어), GitHub API(인증 없이 공개 레포 조회 가능), JSONPlaceholder(연습용 더미 데이터), REST Countries(국가 정보·완전 무료) 등이 좋습니다.
로딩 스피너를 보여주고, 응답이 오면 교체하는 패턴을 사용하세요. 필요하다면 debounce로 API 호출 횟수를 줄이는 것도 좋은 경험입니다.
필수는 아닙니다. 공개 API나 클라이언트 측에서 키 없이 쓸 수 있는 API를 선택하면 Workers 없이도 됩니다. 다만 키가 필요한 API를 쓰려면 Workers 프록시가 필요합니다.
🏆
Week 4 🔒 잠김 마스터
파이널 — 나만의 서비스 출시
기간: 4주차 월요일 ~ 일요일 20:00 (데모데이 당일)
📋
챌린지 개요
Section 01 — Overview

4주간 익힌 모든 것을 쏟아내세요. 자유 주제, 자유 기술 스택. 실제로 사람들이 쓸 수 있는 서비스를 만들고 데모데이에서 발표합니다. 팀 프로젝트도 허용됩니다.

🎯
학습 목표
Section 02 — Objectives
1
풀스택 아키텍처 — 프론트엔드와 백엔드가 연결된 완전한 앱 구조를 설계합니다.
2
인증 & DB 연동 — 로그인 또는 데이터베이스를 실제로 붙여봅니다.
3
데모 발표 — 3분 안에 서비스의 가치를 전달하는 발표를 경험합니다.
필수 요구사항
Section 03 — Requirements
로그인 또는 데이터베이스 중 하나 이상 — 실제 사용자 데이터가 저장되어야 합니다.
실사용 가능한 완성도 — 타인이 실제로 사용할 수 있는 수준이어야 합니다.
데모데이 3분 발표 — 서비스 소개, 기술 스택, 회고를 포함하세요. 팀 프로젝트 허용.
🛠️
권장 기술 스택
Section 06 — Recommended Stack
Next.js풀스택
SupabaseDB+Auth
☁️Cloudflare D1고급
Vercel배포
📤
제출 형식
Section 04 — Submission Format
항목 내용
프로젝트 제목 서비스 이름
한 줄 설명 "누가 왜 쓰는가" 한 문장 (최대 80자)
배포 URL 실제 서비스 HTTPS 주소 (필수)
GitHub URL 소스 코드 저장소 (선택, 공개 권장)
기술 스택 프론트·백엔드·DB·배포 플랫폼 전체
서비스 소개 어떤 문제를 해결하는지, 핵심 기능은 무엇인지 (500자 이내)
데모 영상/발표자료 3분 데모데이 발표 링크 (YouTube, Loom 등)
한 줄 회고 4주를 마치며 한 줄
⚖️
평가 기준
Section 05 — Evaluation
🚀
실사용 가능성
타인이 실제로 쓸 수 있는 완성도인가
30%
🛠️
기술 구현 수준
DB·인증·API 중 하나 이상 실제 동작
25%
🎤
데모 발표
3분 안에 서비스 가치를 명확하게 전달했는가
25%
👥
커뮤니티 투표
익명 투표, 주차당 1인 최대 5표
20%
☁️
Cloudflare Pages 배포 가이드
Section 07 — Deployment Guide

배포(Deploy)란 내 컴퓨터에만 있던 파일을 인터넷 서버에 올려 전 세계 누구나 URL로 접근할 수 있게 만드는 과정입니다.
처음엔 낯설지만 한 번 해보면 정말 별거 아닙니다. 아래 두 가지 방법 중 편한 것을 선택하세요.

파일을 브라우저에 던지기만 하면 됩니다. 코드 한 줄 없이 가능한 가장 빠른 방법입니다.
단, 파일을 수정할 때마다 다시 올려야 합니다. 자동화를 원한다면 방법 B를 추천합니다.
1
Cloudflare 계정 만들기
dash.cloudflare.com 접속 → "Sign up" 버튼 → 이메일 주소 + 비밀번호 입력 → "Create Account" → 받은 편지함에서 인증 링크 클릭
성공: 대시보드 화면에 "Welcome to Cloudflare" 또는 계정 이름이 보이면 정상입니다.
2
Pages 메뉴 찾기
대시보드 왼쪽 메뉴에서 "Workers & Pages"를 클릭 → 화면 상단 "Pages" 탭 클릭 → 오른쪽 파란색 "Create a project" 버튼 클릭
⚠️ 주의: "Workers" 탭이 아니라 반드시 "Pages" 탭이어야 합니다.
3
Direct Upload 선택 & 프로젝트 이름 짓기
"Direct Upload" 탭 클릭 → "Project name" 입력 → "Create Project" 클릭
💡 팁: 프로젝트 이름이 곧 URL이 됩니다. 영문 소문자·숫자·하이픈(-)만 사용 가능합니다.
4
파일 업로드
점선으로 된 업로드 영역에 빌드된 파일 폴더를 드래그해서 놓으세요.
💡 팁: Next.js 등 프레임워크는 빌드 후 나오는 out 폴더를 올리세요. (next export 후) 순수 HTML이라면 index.html이 있는 폴더째로 올리세요.
⚠️ 주의: index.html 파일이 반드시 최상위에 있어야 합니다.
성공: 파일 목록이 나타나고 index.html이 보이면 준비된 것입니다.
5
배포 실행 & 내 사이트 확인
"Deploy site" 버튼 클릭 → 20~40초 대기 → 완료 후 표시된 URL 클릭하여 확인
성공: "Success" 또는 초록색 체크 표시와 함께 배포 완료 화면이 나타납니다.
수정 후 재배포하는 방법
1. Cloudflare 대시보드 → Pages → 내 프로젝트 클릭
2. "Deployments" 탭 → "Create new deployment" 버튼
3. 수정된 파일을 다시 드래그&드롭 → "Deploy site"
→ 30초 후 변경사항이 반영됩니다.
자주 묻는 질문
Section 09 — FAQ
네, W4는 팀 프로젝트를 허용합니다. 제출 시 팀원 전원의 이름을 "프로젝트 제목" 또는 "소개"에 명시해 주세요. 단 리더보드는 프로젝트 단위로 표시됩니다.
온라인 화상 회의로 진행됩니다. 1인당 또는 팀당 3분 발표 + 2분 Q&A. 발표 순서는 제출 순으로 정합니다. 일정은 마감 후 공지됩니다.
W4 필수 요구사항에 "로그인 또는 데이터베이스 중 하나 이상"이 포함됩니다. 단, 구현 완성도보다 "실제 시도했는가"를 더 중요하게 봅니다.
Supabase(PostgreSQL + 인증 무료 제공)가 초보자에게 친화적입니다. Firebase나 PlanetScale도 선택지입니다. 어떤 플랫폼을 써도 괜찮습니다.