1
PWA란 무엇이며 왜 중요한가요?
PWA는 웹 기술(HTML, CSS, JavaScript)로 구축되지만, 웹의 장점(접근성, SEO)과 네이티브 앱의 장점(오프라인 지원, 푸시 알림, 홈 화면 설치)을 결합한 애플리케이션입니다.
현대 웹 애플리케이션은 단순 정보 제공을 넘어 네이티브 앱에 가까운 경험을 제공하는 방향으로 진화하고 있습니다. 프로그레시브 웹 앱(Progressive Web App, PWA)은 이 목표를 달성하기 위한 웹 기술 집합입니다.
PWA 필수 패키지 설치와 PWA를 중심으로 PWA 설정의 판단 흐름을 읽습니다.
PWA는 웹 기술(HTML, CSS, JavaScript)로 구축되지만, 웹의 장점(접근성, SEO)과 네이티브 앱의 장점(오프라인 지원, 푸시 알림, 홈 화면 설치)을 결합한 애플리케이션입니다.
Next.js 프로젝트를 PWA로 만드는 가장 쉽고 널리 사용되는 방법은 next-pwa 라이브러리를 활용하는 것입니다.
오프라인 지원 (Caching Strategy) next-pwa는 Workbox를 기반으로 서비스 워커를 생성하며, 기본적으로 정적 자산과 페이지를 캐싱하여 오프라인 지원을 제공합니다.
개발 모드(npm run dev)에서는 disable: process.env.NODE ENV === 'development' 설정으로 next-pwa가 비활성화되므로, PWA 기능을 테스트하려면 항상 프로덕션...