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 배포 경험 — HTML 파일을 Cloudflare Pages에 드래그&드롭하거나 CLI로 배포해 실제로 접근 가능한 URL을 발급받습니다.
필수 요구사항
Section 03 — Requirements
단일 페이지 구성 — SPA 또는 단순 HTML 파일로 나를 소개하는 단일 페이지를 만드세요.
Cloudflare Pages 배포 — Cloudflare Pages에 배포하여 *.pages.dev URL을 만드세요. 커스텀 도메인도 환영합니다.
최소 콘텐츠 포함 — 이름, 관심사, 한 줄 자기소개를 반드시 포함하세요.
기본 반응형 — 모바일(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
파일을 브라우저에 던지기만 하면 됩니다. GitHub 없이도 가능한 가장 빠른 방법입니다.
1
dash.cloudflare.com 접속 → 무료 계정 생성
이메일 인증 후 대시보드로 이동합니다.
2
Workers & Pages → Pages → Create a project 클릭
좌측 메뉴에서 "Workers & Pages" → 상단 "Pages" 탭 → 파란색 "Create a project" 버튼.
3
"Direct Upload" 탭 선택 → 프로젝트 이름 입력
프로젝트 이름이 곧 URL이 됩니다. 예: my-portfoliomy-portfolio.pages.dev
4
HTML 파일 또는 폴더를 점선 영역에 드래그&드롭
index.html 파일 하나만 있어도 됩니다. CSS·이미지 파일이 있다면 폴더째로 올리세요.
5
"Deploy site" 클릭 → 30초 후 URL 발급 완료 🎉
이후 수정사항은 같은 프로젝트에서 "Deployments → Upload" 로 덮어쓸 수 있습니다.
자주 묻는 질문
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중급
🔒
W1 완료 후 공개됩니다

W1 챌린지를 제출하면 W2 명세서가 자동으로 열립니다. 먼저 이번 주 챌린지를 완성하세요!

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무료
🔒
W2 완료 후 공개됩니다

W2 챌린지를 제출하면 W3 명세서가 자동으로 열립니다.

W1으로 시작하기
🏆
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배포
🏆
W3 완료 후 공개됩니다

W3까지 완료하면 파이널 챌린지 명세서와 데모데이 일정이 공개됩니다.

W1부터 시작하기