Show GN: connectivity-js - 웹 애플리케이션의 online/offline 상태 제어를 위한 오픈소스 라이브러리
(github.com/minseong0324)프론트엔드 앱에서 online/offline 상태를 다루는 로직은 생각보다 자주 비즈니스 로직 안으로 스며드는 것 같아요.
실제로 구현하다 보면 navigator.onLine, online/offline 이벤트 리스너, retry 분기, offline 상태에서의 액션 처리 같은 코드가 여기저기 흩어지기 쉽고, 시간이 지날수록 일관되게 관리하기도 어려워집니다.
오프라인 상태 대응은 늘 우선순위가 밀리기 쉬웠고, 요즘처럼 AI로 기능 개발 속도가 빨라질수록 좋지 않은 네트워크 환경에서도 최소한의 경험을 유지할 수 있도록 제품 경험의 하방을 함께 올리는 일도 중요하다고 느꼈어요.
이런 문제를 조금 더 깔끔하게 다루고 싶어서 connectivity-js라는 오픈소스를 만들었습니다.
- 선언적인 네트워크 상태 제어
- framework-agnostic core + React adapter
- offline action queue
- deduplication / backoff retry
GitHub
https://github.com/minseong0324/connectivity-js
아직 0.x 버전이라 내부 구현이나 API 설계는 더 다듬어갈 부분이 많습니다. 비슷한 문제를 겪어보셨거나 개선 아이디어가 있다면
피드백, 이슈, PR 모두 환영합니다.