<aside>

</aside>

챕터 소개 🚀

드디어 코드를 움직이게 할 시간입니다! 💻 지난 시간에 만든 프로젝트 뼈대에 실제 웹 프레임워크인 FastAPI와 웹 서버인 Uvicorn을 추가해서, 우리만의 작은 API 서버를 만들어 볼 거예요. poetry add라는 아주 중요한 명령어를 배우고, 버전 번호 옆에 붙는 신비한 기호들(^, ~)의 비밀도 파헤쳐 보겠습니다.


챕터 목표 🎯


이번 챕터에서 사용되는 전체 코드 및 프로젝트 구조 📂

지난 시간 구조에서 poetry.lock 파일이 추가되고 pyproject.toml이 업데이트됩니다. main.py 파일은 그대로 유지됩니다.

todo_api/
├── .venv/              <-- poetry install/add 실행 후 생성됨
├── poetry.lock         <-- poetry add 실행 후 생성됨!
├── pyproject.toml      <-- poetry add 실행 후 업데이트됨!
├── README.md
├── src/
│   └── todo_api/
│       ├── __init__.py
│       └── main.py
└── tests/
    └── __init__.py

src/todo_api/main.py (4강과 동일)

from fastapi import FastAPI

# FastAPI 애플리케이션 인스턴스를 생성합니다.
app = FastAPI()

# 루트 경로("/")로 GET 요청이 오면 이 함수를 실행합니다.
@app.get("/")
def read_root():
    return {"message": "Hello, Todo API!"}

pyproject.toml (업데이트된 부분)

# ... [project] 섹션 ...
dependencies = [
    "fastapi>=0.111,<0.112",
    "uvicorn[standard]>=0.30,<0.31",
]
# ... 나머지 부분 ...


강의 내용 📖

의존성 추가의 정석: poetry add

poetry add <패키지_이름> 명령어는 단순히 패키지를 설치하는 것을 넘어, pyproject.toml 파일에 의존성을 기록하고 poetry.lock 파일을 갱신하는 3가지 작업을 한 번에 수행합니다.