大 PWA 시대가 옵니다
Prograssive Web App. 이하 PWA는 곧 공개된지 10년이 넘는 기술이 되어가고 있습니다. 하지만 근래에 들어야, 한편으론 생각 외로 많은 서비스들이 PWA를 지원하면서 웹브라우저를 통해 OS 레벨의 알림을 제공하고, 더 나아가서는 설치도 가능하며, MS의 윈도우 앱스토어인 Microsoft Store에는 PWA를 스토어에 출시 가능하도록 지원하여 넷플릭스, 디즈니+같은 앱들을 스토어에서 설치할 수 있는데 실제로 구동되는건 엣지 브라우저 기반의 PWA인 것을 볼 수 있습니다. 하지만 그럼에도 여전히 설치 기능이 있는줄 모르거나 설치나 알림 팝업이 뜨면 닫아버리는데 익숙하지요. 그리고 이렇게 PWA를 지원하는 곳들은 대부분 어느정도 규모가 있는 곳들 뿐이었습니다. 이런 실용적인 기술이 왜 대중화에 제한적이 되었는가. 바로 구현의 접근성 때문입니다. 대부분 웹 프레임워크에서는 PWA 구현은 가능하지만 프레임워크 기저에서부터 '앱' 보다는 '웹'개념을 토대로 구성되어있으며, PWA를 구현하는건 어디까지나 옵션에 불과하고, 사용자도 많지 않은데도 불구하고 굳이 이를 구현해가며 쓸 곳이 많지 않습니다. 알림 기능을 제외하더라도 PWA는 모바일은 물론 PC에서 설치 가능하며, 웹 서비스의 버전관리가 가능해진다는 점에서 좀 더 앱에 가까운 특성을 갖게 해줍니다. 그럼에도 PWA의 구현으로 이어지는 것이 더딘 이유는 현재 웹 검색에서 찾아볼 수 있는 PWA 예제 코드가 대부분 작동 확인 수준의 구현 뿐이라는 것입니다. 물론 PWA가 본격적인 도입에 있어서는 초기인 만큼 각 서비스에 맞는 구현이 필요하기에 표준 구현이라고 할 만한 것을 알리기에는 애매한 점이 있는 것은 사실이나, 그럼에도 불구하고 PWA를 기본이 아닌 필요에 따른 옵션으로 취급되고 사례에 따른 구현도 개발자 또는 개발사의 강력한 의지가 있지 않고서는 필요에 맞는 구현을 찾아가며 또는 연구해가며 구현하기는 쉽지 않죠. 이런 상황에 변화를 가져 올 수 있다고 생각하는것이 바로 제가 개발한 No-build Front-end JS 프레임워크인 Estre UI입니다. 최근 1.0.0 버전을 정식 공개하고 NPM에도 CLI인 create-estreui와 함께 estreui가 공개되었습니다. Estre UI는 기본적으로 버전 관리가 가능한 PWA구현이 기본적으로 적용되어있고, 기존 네이티브 앱개발과 유사한 형태의 MVC/MVVM 패턴으로 개발할 수 있도록 Life-cycle이 제공되고 있습니다. npm create estreui 이 명령 한줄로 PWA가 기본 구현된 앱을 놓고 본격적인 UI구현으로 넘어갈 수 있습니다. 이를 통해 좀더 빠르게 PWA가 확산되고 대중화가 될 수 있을거라 예상합니다. Estre UI에 대한 자세한 사항은 아래 링크에서 확인해보세요. [NPM - estreui](https://www.npmjs.com/package/estreui) [NPM - create-estreui](https://www.npmjs.com/package/create-estreui) [Github - EstreUI.js](https://github.com/SoliEstre/EstreUI.js) [Github - EstreUI-for-node](https://github.com/SoliEstre/EstreUI-for-node)