데브허브 | DEVHUB | Build and Deploy a Full-Stack Hotel Website with Astro & SanityBuild and Deploy a Full-Stack Hotel Website with Astro & Sanity
- Astro는 콘텐츠 중심 웹사이트(블로그, 랜딩 페이지, 포트폴리오, 이커머스) 구축에 최적화된 웹 프레임워크입니다. 🚀
- 기본적으로 브라우저에 JavaScript를 거의 보내지 않아 성능이 우수하며, '아일랜드 아키텍처'를 통해 필요한 클라이언트 측 상호작용을 추가할 수 있습니다. 🏝️
- React, Vue, Svelte 등 다양한 UI 프레임워크를 함께 사용하여 상호작용을 구현할 수 있는 높은 유연성을 제공합니다. 🧩
- 기본적으로 정적 렌더링되지만, 필요에 따라 서버 사이드 렌더링(SSR) 또는 하이브리드 렌더링으로 전환할 수 있습니다. ⚙️
- Sanity는 구조화된 콘텐츠를 위한 헤드리스 CMS로, 프런트엔드와 백엔드를 분리하여 유연한 콘텐츠 관리를 가능하게 합니다. 🧠
- GraphQL과 유사한 Groq 쿼리 언어를 사용하여 콘텐츠를 효율적으로 쿼리하고 특정 데이터를 정확하게 가져올 수 있습니다. 🔍
npm create astro@latest 명령어로 프로젝트를 초기화하며, public, src (assets, components, layouts, pages) 등의 명확한 폴더 구조를 가집니다. 📁
- React와 유사한 컴포넌트 기반 개발을 지원하며,
코드 펜스를 통해 JavaScript 로직을 처리하고 동적인 데이터 전달이 가능합니다. 🏗️
- Astro 컴포넌트의 CSS는 기본적으로 스코프되어 다른 컴포넌트에 영향을 주지 않으며,
pages 폴더의 파일은 자동으로 라우팅 엔드포인트가 됩니다. 🎨
astro.config.mjs 파일을 통해 서버 포트 변경, 개발 툴바 비활성화 등 프로젝트 전반의 설정을 관리할 수 있습니다. 🛠️
package.json을 통해 Astro 및 기타 라이브러리 버전을 관리하며, 최신 버전의 빠른 변화에 유의하여 프로젝트를 진행해야 합니다. 📦
- Font Source를 사용하여 Google Fonts(Poppins)를 쉽게 통합하고, Tailwind CSS v4를 설치하여 효율적인 스타일링 환경을 구축합니다. ✒️