피드로 돌아가기
Dev.toFrontend
원문 읽기
Vanilla JS 기반 Client-side 렌더링으로 서버 비용 0원 및 Privacy 보장
I Built a Free QR Code Generator from Scratch — 24 Types, No Sign-Up, No Expiry
AI 요약
Context
기존 QR 생성 도구의 회원가입 강제 및 유료 결제 유도, 생성 코드의 유효기간 제한이라는 사용자 경험 저해 요소 존재. 데이터 서버 전송으로 인한 개인정보 유출 우려와 서버 유지 비용 발생이라는 구조적 한계점 식별.
Technical Solution
qr-code-styling라이브러리를 통한 100% Client-side 생성 구조 설계로 서버 트래픽 및 비용 제거requestIdleCallback을 활용한 라이브러리 Lazy-loading 적용으로 LCP 성능 최적화 구현- 각 QR 타입별 상이한 입력 필드를 처리하는 Dynamic Form Renderer 설계를 통한 UX 일관성 유지
- JS Object Map 기반의 경량 i18n 구조 설계로 프레임워크 없이 다국어 지원 구현
- PNG와 SVG 포맷 동시 제공을 통한 웹 렌더링 효율성과 인쇄 품질의 Trade-off 해결
- Browser Local Storage 기반의 히스토리 저장 방식으로 서버 DB 의존성 제거
실천 포인트
- LCP 개선을 위해 메인 스레드 부하가 큰 라이브러리는 `requestIdleCallback` 도입 검토 - 정적 데이터 생성 도구의 경우 Serverless를 넘어 Client-side 전용 아키텍처로 비용 및 보안 리스크 최소화 - 다국어 지원 시 단순 매핑 구조로 충분한 경우 무거운 i18n 프레임워크 도입 지양