Level 7 챌린지
모든 걸 합치기 — 완전한 서버 만들기
⏱ 예상 ~6분
01 · 읽기
배운 모든 걸 합칠 때예요. 이 챌린지에서 처음부터 완전한 서버를 만들 거예요. Level 7 의 모든 걸 결합해요: - HTML 페이지 제공 - 텍스트 routes - JSON API endpoint - Query parameter - .gitignore 로 프로젝트 제대로 세팅 - Git 과 GitHub 로 버전 관리
여기에는 단계별로 손잡고 가지 않아요. 이전 강의에서 필요한 지식은 다 있어요. 막히면 힌트를 봐요. 하지만 먼저 직접 시도해요.
이게 진짜 개발의 느낌이에요. 본인은 각 부품을 알고, 이제 그걸 완전한 뭔가로 조립해요.
핵심 정리
- 이 챌린지는 Level 7 의 모든 내용을 결합해요
- 각 단계를 먼저 직접 시도하고, 그 다음 힌트를 봐요
- 이전 강의를 참고로 돌아봐도 괜찮아요
- 완료하면 GitHub에 진짜 프로젝트가 생겨요
02 · 체크리스트
아래 모든 기능이 있는 서버를 만들어요. 완료한 항목에 체크해요.
- GET / 가 HTML 환영 페이지를 제공
- GET /about 이 about 페이지를 제공
- GET /api/time 이 현재 시간이 있는 JSON 을 돌려줌
- GET /api/greeting?name=Sara 가 개인화된 인사를 돌려줌
- node_modules/ 와 .env 가 포함된 올바른 .gitignore
- 프로젝트를 GitHub에 push
03 · 퀴즈
Node.js 프로젝트를 GitHub에 push 하기 전에, node_modules 가 commit 되지 않도록 어떤 파일을 만들어야 하나요?
- .env
- package-lock.json
- .npmrc
- .gitignore
04 · 빈칸 채우기
Express route handler 에서 JSON 데이터를 돌려주려면, res.send(data) 대신 res._____(data) 를 써요.
05 · 읽기
축하해요. 방금 진짜 web 서버를 만들고 GitHub에 게시했어요.
이걸 음미해 봐요. 몇 강의 전에 Node.js 를 처음 설치했어요. 이제 본인은: - HTML 페이지를 제공하는 동작하는 web 서버 - 실시간 JSON 데이터를 돌려주는 API endpoint - 사용자 입력 (query parameter) 에 반응하는 동적 routes - 버전 관리가 되고 제대로 세팅된 프로젝트 - 세상에 보여줄 GitHub의 코드
이건 장난감이나 시뮬레이션이 아니에요. 진짜 소프트웨어예요. 전문 엔지니어가 매일 쓰는 같은 도구와 패턴을 사용한 거예요.
Level 7 의 핵심 깨달음: 소프트웨어를 만드는 건 문법을 외우는 게 아니에요. 각 부품 — 서버, routes, 응답, 데이터 형식 — 을 이해하고, 그걸 조립하는 거예요. 이제 본인은 그 부품들을 이해해요.
곧 Claude Code가 더 빨리, 더 빨리 조립하도록 도와줄 거예요.
핵심 정리
- 처음부터 진짜, 동작하는 web 서버를 만들었어요
- HTML 페이지와 JSON API endpoint 둘 다 만들었어요
- 본인 코드가 GitHub에 있어요. 포트폴리오의 진짜 프로젝트예요
- 다음: Claude Code가 본인의 개발 속도를 크게 가속시킬 거예요
06 · 퀴즈
새 엔지니어가 본인 프로젝트에 합류해요. GitHub에서 repo 를 clone 하고, npm install 을 실행하는데, 서버가 시작되지 않아요. 가장 가능성 높게 만들어야 할 파일을 잊은 건?
- 환경별 설정을 위한 .env 파일
- node_modules/ — 본인 것을 수동으로 복사해야 해요
- .gitignore — 그게 없으면 서버가 안 돌아가요
- app.js — 서버 엔트리, 원래 repo 에 있어야 해요
⚠ 전체 인터랙티브 경험에는 JavaScript가 필요해요. JavaScript를 켜고 새로 고침해 주세요.
※ 이 사이트는 독립 운영되는 교육 프로젝트로, Anthropic의 공식 제품이 아니에요. Claude™ 는 Anthropic, PBC 의 상표예요.