← Start here · Module 1 · 7 slides
수업 전 개발 환경을 갖춥니다. 6가지 도구를 설치하고, 마지막에 API 키 하나를
공유 .env에 저장하면 코스의 모든 예제가 그걸 자동으로 찾아 씁니다.
How the pieces fit together
코드를 들여다보고 편집하는 에디터(IDE). 필수는 아니지만 곧 필요해집니다.
# macOS
brew install --cask visual-studio-code
# Windows
winget install Microsoft.VisualStudioCode
# Verify
code --version
code 명령이 없으면 — macOS: VSCode → ⌘⇧P → "Shell Command: Install 'code' command in PATH".
Windows: 설치 재실행 후 "Add to PATH" 체크.
변경을 한 커밋씩 추적 → 발표 때 "diff를 따라 걷기". 42에서 매일 쓰던 그 git이에요.
# macOS (보통 Xcode CLT로 이미 있음)
brew install git
# Windows
winget install Git.Git
# Verify
git --version
GitHub 계정/원격은 불필요 — git은 완전히 로컬로 동작합니다.
repo는 프로젝트 안의 숨김 .git/ 폴더일 뿐이에요.
이 코스를 위해 git을 쓰려면 GitHub 계정이 꼭 있어야 할까요?
git(버전관리)과 GitHub(원격 호스팅)은 다른 거예요. git은 로컬에서 커밋·diff·되돌리기를 전부 합니다. GitHub은 그걸 원격에 공유할 때만 필요하죠.
React 프론트엔드를 빌드·실행하는 도구(npm 포함).
# macOS
brew install node
# Windows
winget install OpenJS.NodeJS.LTS
# Verify
node --version # v20.x.x or v22.x.x
npm --version
또는 nodejs.org → LTS(v20/v22).
Flask 백엔드를 돌리는 언어. 버전을 3.11로 맞춥니다.
# macOS
brew install python@3.11
# Windows
winget install Python.Python.3.11
# Verify
python3.11 --version # Python 3.11.x
py -3.11 --version # Windows: py 런처로 특정 버전 선택
python3.11로 명시 호출하면 시스템에 여러 버전이 깔려 있어도 안전해요.
프로젝트 폴더를 만들고, 그 안에 격리된 파이썬 환경(venv)을 켭니다.
# macOS
mkdir ~/ksept-lab && cd ~/ksept-lab
python3.11 -m venv .venv
source .venv/bin/activate
# Windows (PowerShell)
mkdir ~/ksept-lab; cd ~/ksept-lab
py -3.11 -m venv .venv
.venv\Scripts\Activate.ps1
pip install한 건 시스템 전체가 아니라 이 서랍에만 들어갑니다 —
프로젝트끼리 라이브러리가 안 엉켜요.
venv isolates installs per project
Windows에서 스크립트가 막히면 한 번만:
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned.
확인: which python이 .../ksept-lab/.venv/bin/python으로 끝나야 합니다.
venv를 활성화한 채 pip install flask를 하면?
venv 활성화 = "이 서랍을 기본으로 써"라는 뜻. 그래서 설치물이 격리됩니다.
.venv는 git에서 제외돼요(용량 큼, 재생성 가능).
앱을 대신 스캐폴딩해 주는 AI 코딩 어시스턴트(지금 당신이 쓰는 그것).
# macOS
npm install -g @anthropic-ai/claude-code
# Windows (자체 바이너리, Node 불필요)
irm https://claude.ai/install.ps1 | iex
# Verify
claude --version
cd ~/ksept-lab
code . # VSCode로 폴더 열기
claude # 통합 터미널에서 실행 — 첫 실행 시 로그인 안내
Claude Code CLI는 다음 섹션의 API 키로 로그인할까요?
둘은 별개예요. Claude Code(도구)는 자체 계정으로 로그인하고, API 키는
당신 앱이 Claude를 호출할 때 쓰는 열쇠입니다. 다음 섹션에서 그 키를 받아 .env에 둬요.
당신의 앱이 Claude를 호출할 때 쓰는 열쇠. Claude Code 자체는 자기 로그인이 있어 필요 없고, 이 키는 예제 앱용이에요.
.env 한 곳에 저장:# macOS
cd ~/ksept-lab
echo 'ANTHROPIC_API_KEY=sk-ant-...your-key...' > .env
# Windows
'ANTHROPIC_API_KEY=sk-ant-...your-key...' | Out-File -Encoding ascii .env
.env는 git에서 제외됩니다. 각 앱보다 한 단계 위
(~/ksept-lab/)에 두면, 모든 예제 앱이 폴더 트리를 거슬러 올라가
이 키 하나를 자동으로 찾아 씁니다 — 키를 여러 번 적을 필요가 없어요.
One shared .env, found by walking up the tree
.env를 각 앱 폴더가 아니라 그 상위(~/ksept-lab/)에 두는 이유는?
키를 앱마다 복붙하면 새는 지점도 늘고 관리가 번거로워요. 상위에 하나 두면 모든 앱이
공유하고, .gitignore 한 줄로 커밋 사고도 막습니다. 비밀은 코드와 분리가 원칙이에요.