케빈은 레일즈 8에 Vite를 적용하면 엄청나게 빠르다고 주장하며 대화가 시작됩니다. 그는 Node, npm 설치 및 스크립트 설정의 필요성을 언급하며, React 사용을 위해서는 Vite와 React Refresh, 그리고 TypeScript 지원을 위한 추가 설정이 필수적이라고 강조합니다. 케빈이 제시하는 ‘모던 웹 개발’ 스택은 다음과 같은 광범위한 영역을 아우릅니다:
모던 웹 개발 스택 구성 요소
-
프런트엔드 개발 환경: Vite, Node.js, npm, React, Babel, vite-plugin-ruby, React Refresh, TypeScript 등.
-
스타일링: PostCSS, Tailwind CSS와 같은 최신 CSS 프레임워크.
-
코드 품질 및 워크플로우: ESLint, Prettier를 통한 코드 린팅/포맷팅, Husky를 활용한 Git 훅 관리.
-
고급 프런트엔드 및 실시간 기능: 서버 사이드 렌더링을 위한 Next.js/Remix, 자바스크립트 프레임워크 없는 반응형 UI를 위한 StimulusReflex/Hotwire, 실시간 업데이트를 위한 ActionCable 및 Redis.
-
인프라 및 배포: Docker, Docker Compose를 통한 의존성 격리 및 환경 재현성, Fly.io와 GitHub Actions를 활용한 배포 및 CI/CD 파이프라인.
이러한 방대한 목록에 존은 “너무 많은 것 같다”며 당혹감을 표합니다. 케빈은 이 모든 것이 “현대 웹 개발”의 필수 요소이며 “간단하게 유지하는 방법”이라고 주장합니다. 그러나 대화의 마지막에 존은 단 하나의 명령어로 앱을 즉시 실행시키고, 빠른 로딩과 내비게이션을 보여줍니다. 케빈이 놀라워하며 어떤 복잡한 스택인지 묻자, 존은 단 한마디로 답합니다: “바닐라 레일즈.” 이는 레일즈가 자체적으로 제공하는 강력한 기능만으로도 충분히 효율적이고 빠른 애플리케이션 개발이 가능함을 극명하게 대비시킵니다.