내가 옛 이미지 처리 라이브러리를 Rust + WebAssembly로 재구축했다
발행: (2026년 2월 8일 오전 02:31 GMT+9)
2 분 소요
원문: Dev.to
Source: Dev.to
Rust + WebAssembly 로 오래된 브라우저 이미지 라이브러리 재구축
이 프로젝트는 원래 두 가지 목적을 위한 작은 연습 프로젝트로 시작했습니다:
- 라이브러리 배포
- 실제 워크플로우에서 Rust + WebAssembly 학습
한동안 중단했다가 최근에 img-toolkit을 제대로 개선하기 위해 다시 시작했습니다.
Rust/WASM 코어와 JS/TS 래퍼를 갖춘 브라우저 이미지 처리 라이브러리입니다.
- 리사이즈
- 포맷 변환 (
jpg/png/webp) - 밝기 조정
GitHub:
Demo:
npm:
다시 시작한 이유
간단한 연습 레포지토리를 더 깔끔하고 실제로 사용할 수 있는 형태로 만들고 싶었습니다.
최근 개선 사항
- 함수 경계를 명확히 한 API 정리:
processImageresizeconvertFormatadjustBrightness
- 다양한 런타임 환경에서의 WebP 동작 개선
- 사용자에게 보여지는 오류 처리 개선
- 문서 및 릴리즈 프로세스 개선
간단 비교 (동일 원본 이미지)
| 크기 | |
|---|---|
| 원본 | 747 KB |
| JS 캔버스 출력 | 49.3 KB |
| Rust/WASM 출력 | 41.3 KB |
(비교 이미지들은 README에 있습니다.)
아직 진행 중인 작업이지만 이전보다 훨씬 더 사용하기 편해졌습니다. 사용해 보시고 API 설계와 실제 사용 사례에 대한 피드백을 주시면 정말 감사하겠습니다.
