Phase 1~10 전체 로드맵, 드디어 완주했습니다
글 작성자
개발자 개인정보 및 고객사 정보 보호를 위해 프로젝트명과 일부 세부 정보는 마스킹 처리되어 있습니다.
개발자 개인정보 및 고객사 정보 보호를 위해 프로젝트명과 일부 세부 정보는 마스킹 처리되어 있습니다.
어떤 프로젝트든 "로드맵 전체 구현 완료"라는 커밋 메시지를 작성하는 순간이 있습니다. 오늘 studiobaton.moduler에서 그 순간이 왔고, +40,393줄이라는 숫자가 그 무게를 말해주고 있네요.
단순히 기능을 만드는 것과, 그걸 실제로 "설치"하고 "분석"할 수 있게 만드는 건 완전히 다른 일입니다. 오늘 가장 공들인 부분은 "내 사이트에 설치" 기능과 이용고객 데이터 분석 시스템이었습니다.
설치 가이드는 Cafe24, 아임웹, 고도몰, Shopify까지 플랫폼별로 따로 작성했습니다. 개발자가 아닌 분들도 3단계면 끝나도록요. (비개발자를 위한 친절한 가이드라는 커밋 메시지가 괜히 붙은 게 아닙니다)
큰 기능 배포 직전에 보안 점검을 돌렸습니다. .env.example에 실제 시크릿이 들어있던 건 식은땀이 났고, jsPDF CVE 취약점은 바로 업그레이드했습니다. OAuth의 allowDangerousEmailAccountLinking 플래그도 제거 — 이름에 "Dangerous"가 들어있으면 일단 의심하는 게 맞더라고요.
// SVG sanitizer를 정규식에서 DOMPurify로 교체
// 정규식으로 보안 처리하면 언젠간 뚫립니다
const clean = DOMPurify.sanitize(svgString, { USE_PROFILES: { svg: true } });
검색 결과 페이지, 오프라인 스토어 데이터 연결, 브랜드 스토리 페이지까지. 하나씩 데이터를 붙이고 컴포넌트를 분리하는 작업이 진행됐습니다. 겉으로는 조용하지만, 이런 작업이 쌓여야 나중에 유지보수가 편해지죠.
하이츠스토어 솔리드에서는 이벤트 타이머의 날짜 불일치 버그를 수정했습니다. 저장 시점의 "현재 날짜"가 섞여들어가던 문제였는데, 시작 전/진행 중/종료 3상태로 깔끔하게 정리했습니다.
큰 마일스톤을 찍은 날일수록, 작은 버그 수정의 가치를 잊지 말 것.