콘텐츠로 이동

AI 던전 게임

이 튜토리얼에서는 AI 기반 던전 어드벤처 게임을 구축하게 됩니다. 본 튜토리얼은 @aws/nx-plugin 또는 관련 기술에 대한 기존 지식을 전제로 하지 않습니다. 여기서 배우게 될 기술들은 모든 @aws/nx-plugin 기반 애플리케이션 구축에 필수적인 핵심 내용이며, 튜토리얼을 완전히 이해하면 @aws/nx-plugin에 대한 깊은 이해와 NX 사용의 기초를 다질 수 있습니다.

튜토리얼을 완료한 사용자는 다음을 수행할 수 있는 지식을 습득하게 됩니다:

  • @aws/nx-plugin을 사용해 새로운 애플리케이션 생성
  • 코드베이스 관리/빌드를 위한 NX 활용
  • tRPC와 FastAPI를 모두 사용한 API 구축
  • 타입 안전 파일 기반 라우팅을 지원하는 Tanstack router로 새 페이지 생성
  • 백엔드 API 호출을 위한 Tanstack query 사용
  • 목적에 맞게 생성된 코드 수정
  • CDK 인프라 생성 및 배포

이 튜토리얼에서는 @aws/nx-plugin을 사용해 AI 기반 던전 어드벤처 게임을 구축하게 됩니다.

완성된 결과물은 아래에서 확인할 수 있습니다:

game-select.png
game-conversation.png

AI 기반 던전 어드벤처 게임은 다음 구성 요소 아키텍처를 사용해 구축됩니다:

dungeon-game-architecture.png
  • 게임 상태 관리를 위해 ElectroDB/DynamoDB를 사용하는 tRPC API
  • 스토리 생성을 위한 Python/FastAPI Lambda 함수 (스트리밍 응답 지원, Amazon Bedrock 기반)
  • React/Vite 프론트엔드 웹사이트:
    • 안전한 API 호출을 위한 Amazon Cognito/Identity Pools
    • 타입 안전 파일 기반 라우팅을 지원하는 Tanstack router
    • Game 및 Story API 호출을 위한 생성된 SDK (Tanstack query 활용)
  • 애플리케이션 배포를 위한 CDK 인프라

진행 전 다음 전역 종속성이 필요합니다:

  • Git
  • Node >= 22 (버전 관리를 위해 NVM과 같은 도구 사용을 권장합니다)
    • node --version 실행으로 버전 확인
  • PNPM >= 10 (Yarn >= 4, Bun >= 1, 또는 NPM >= 10 사용도 가능)
    • pnpm --version, yarn --version, bun --version 또는 npm --version 실행으로 버전 확인
  • UV >= 0.5.29
    1. 다음 명령어로 Python 3.12 설치: uv python install 3.12.0
    2. uv python list --only-installed 실행으로 설치 확인
  • 애플리케이션이 배포될 AWS Credentials이 대상 AWS 계정에 구성되어 있어야 함
  • VSCode 사용 시 Nx Console VSCode Plugin 설치 권장
  • 대상 리전에서 Bedrock의 Anthropic Claude 3.5 Sonnet v2 모델 접근이 활성화된 AWS 계정 보유 (가이드에 따른 단계 수행)