피드로 돌아가기
I got tired of resizing logos for social platforms — so I shipped a free generator
Dev.toDev.to
Frontend

Single SVG input 기반 21종 플랫폼 최적화 자산 자동 생성 파이프라인 구축

I got tired of resizing logos for social platforms — so I shipped a free generator

Varnox2026년 6월 7일2beginner

Context

플랫폼별 상이한 이미지 규격 및 Encoding Rule로 인한 반복적인 수동 Resize 작업 발생. Figma 등 디자인 도구의 Batch Export 기능 부재 및 유료 Brand Kit 제약으로 인한 리소스 낭비 해결 필요.

Technical Solution

  • Next.js App Router 기반의 Server-side Rendering 구조 설계
  • Sharp 라이브러리를 활용한 고성능 Server-side 이미지 처리 로직 구현
  • TypeScript 기반 Catalog-driven Asset Spec 정의를 통한 플랫폼별 Dimensions, Padding, Format, KB Target 관리
  • SVG Sanitization 프로세스 적용을 통한 보안 취약점 제거 및 렌더링 안정성 확보
  • Ephemeral Storage 전략을 통한 생성 파일 30분 후 자동 삭제 및 Privacy 강화
  • Data-driven Catalog 구조 설계를 통한 신규 플랫폼 규격의 신속한 확장성 확보

- 플랫폼별 복잡한 제약 사항을 코드 내 하드코딩 대신 별도 Spec Catalog로 분리하여 관리할 것 - 외부 업로드 SVG 처리 시 반드시 Sanitization 과정을 거쳐 XSS 및 보안 리스크를 방지할 것 - 이미지 처리 부하를 줄이기 위해 Client-side가 아닌 Server-side에서 전문 라이브러리(Sharp 등)를 활용할 것 - 개인정보 보호 및 저장 공간 효율화를 위해 생성 데이터의 TTL(Time-To-Live)을 짧게 설정할 것

원문 읽기