Squishly Tools 소개
일상적인 파일 작업을 위한 무료 도구 모음이에요. 모든 작업이 브라우저 안에서 이루어지기 때문에 여기서 여는 파일은 어디에도 업로드되지 않아요.
Squishly Tools는 Ikonik Digital이 만들고 관리하는 무료 브라우저 기반 파일 도구 모음이에요. 사람들이 흔히 "무료 온라인 변환" 사이트에 맡기는 일상적인 파일 작업, 즉 이미지 압축과 변환, PDF 만들기, 병합, 분할, 압축 파일 만들기와 풀기, 오디오와 동영상 변환을 한곳에 모았어요. 그리고 이 모든 작업을 파일을 한 번도 업로드하지 않고 처리해요.
만든 이유
거의 모든 무료 온라인 변환 사이트는 같은 방식으로 작동해요. 파일을 서버에 업로드하면 그곳에서 처리한 뒤 다운로드 링크를 돌려주죠. 휴가 사진이라면 별문제가 없어요. 하지만 전화번호가 적힌 이력서, 신분증 스캔본, 서명한 계약서, 은행 거래 내역서, 진료 기록이라면 이야기가 달라요. 내 문서가 전혀 모르는 컴퓨터에, 어느 나라인지도 알 수 없는 곳에, 얼마나 오래인지 확인할 수도 없는 기간 동안 놓여 있게 되니까요.
저희가 Squishly Tools를 만든 이유는 이런 작업에 서버가 전혀 필요 없기 때문이에요. 요즘 브라우저는 스스로 이미지를 디코딩하고 다시 인코딩하고, PDF를 렌더링하고, 동영상 인코더를 실행하고, 파일을 압축할 수 있어요. 그래서 여기 있는 모든 도구는 내 기기에서 작업을 처리해요. 페이지를 열고 와이파이를 꺼 보세요. 도구는 그대로 작동해요. 이건 홍보 문구가 아니라 직접 확인할 수 있는 가장 쉬운 방법이에요.
Squish 가족을 소개해요
이 사이트는 파일 크기를 아주 진지하게 받아들이는 작고 말랑말랑한 젤리 큐브 가족이 운영해요. 왼쪽부터 소개할게요.
- Lilac은 막내예요. 작게 만들고 싶지 않은 사진을 본 적이 한 번도 없어요. 경고의 의미로 40 MB짜리 PNG 사진을 벽에 걸어 두고 있어요.
- Sunny는 폴더가 얌전해질 때까지 그 위에 앉아 있어요. 아무도 시킨 적은 없어요. 그냥 그렇게 해요.
- Squish는 홈페이지에서 만날 수 있는 친구예요. 도착하는 파일을 하나하나 꼭 안아 살짝 눌러 준 다음 더 가벼워진 상태로 돌려줘요. 평생 무언가를 업로드해 본 적이 없고, 그게 살짝 자랑스러워요.
- Peachy는 ZIP 담당이에요. 프로젝트 폴더 하나를 통째로 깔끔한 압축 파일 하나에 담고도 간식 넣을 자리까지 남겨요.
- Bluey는 찾아오는 모든 방문자에게 손을 흔들어요. 탭을 닫을 때 파일에게 작별 인사를 하는 것도 Bluey의 몫인데, 파일이 애초에 다른 곳에 간 적이 없으니 순식간에 끝나요.
이 가족이 이미지, PDF, 동영상, 오디오, 압축 파일을 나눠 맡고 있어요. 누구도 서버를 본 적이 없고, 앞으로도 그렇게 지내고 싶어 해요.
여기서 할 수 있는 일
- 이미지. WebP, AVIF, JPG, PNG, GIF, BMP, ICO 사이의 압축과 변환, 정확한 크기로 크기 조정, 비율을 고정한 자르기, 회전과 뒤집기, 텍스트 워터마크 추가, 칙칙한 사진 보정까지 할 수 있어요. 모두 여러 파일을 한 번에 처리할 수 있어요.
- PDF. 이미지로 PDF 만들기, 여러 PDF를 하나로 병합, 페이지 분할과 추출, 페이지를 이미지로 변환, 무거운 스캔 파일 압축, 페이지 영구 회전, Word 문서를 PDF로 변환할 수 있어요.
- 압축 파일. ZIP 파일을 만들고 열 수 있고, 파일 하나를 gzip으로 압축하거나 풀 수 있어요.
- 동영상과 오디오. 브라우저 안에서 돌아가는 진짜 FFmpeg 엔진으로 동영상을 더 작은 H.264 MP4로 압축하고, 오디오를 MP3, M4A, WAV, OGG 사이에서 변환해요.
- 유틸리티. 번호와 패턴을 이용해 폴더 안의 파일 이름을 한 번에 바꿀 수 있어요.
모든 도구에는 전용 페이지가 있고, 언제 쓰면 좋은지, 어떤 설정이 중요한지, 결과가 어떻게 나오는지 설명하는 가이드가 함께 있어요. 이미지 형식, PDF 용량, 동영상 압축, 압축 파일 형식, 파일 개인정보 보호를 더 자세히 다룬 참고 가이드도 준비되어 있어요.
내부 작동 방식
마법은 없어요. 표준 웹 기술을 꼼꼼하게 사용했을 뿐이에요.
- 이미지 도구는 브라우저의 Canvas API로 이미지를 디코딩하고, 크기를 바꾸고, 그리고, 다시 인코딩해요. JPG, PNG, WebP 인코딩은 브라우저에 내장된 인코더가 맡고, AVIF와 ICO는 작은 JavaScript 인코더를 사용해요.
- PDF 도구는 두 가지 오픈소스 라이브러리를 사용해요. 문서를 만들고, 병합하고, 분할하고, 회전하는 데는 pdf-lib를, 페이지를 이미지로 바꾸고 압축하는 데는 Firefox에 내장된 렌더러인 Mozilla의 PDF.js를 써요.
- Word를 PDF로 변환할 때는 mammoth 라이브러리로 .docx를 읽고 pdf-lib로 내용을 PDF에 배치해요. 텍스트, 제목, 목록은 잘 처리하고, 재현할 수 없는 레이아웃은 도구 페이지에 솔직하게 적어 두었어요.
- 동영상과 오디오는 WebAssembly로 컴파일한 FFmpeg로 처리해요. 엔진 크기는 약 32 MB이고, 처음 사용할 때 한 번 다운로드한 뒤 캐시에 저장돼요. 네이티브 앱보다는 느리지만 영상이 기기를 떠나지 않아요.
- ZIP은 JSZip을, gzip은 브라우저에 내장된 CompressionStream과 DecompressionStream API를 사용해요. 브라우저가 압축된 웹페이지를 풀 때 쓰는 바로 그 엔진이에요.
이 라이브러리들은 모두 사이트에 함께 들어 있고 페이지와 같은 곳에서 불러와요. 파일 데이터는 어떤 순간에도 외부 서비스로 전송되지 않아요.
할 수 없는 일
모든 작업이 내 기기에서 이루어지기 때문에 도구는 기기의 메모리와 프로세서 성능의 영향을 받아요. 두 시간짜리 4K 동영상이나 천 쪽짜리 스캔 책은 데스크톱 소프트웨어로 하는 게 좋아요. 복잡한 Word 레이아웃을 완벽하게 재현하려면 Word 자체가 필요해요. 저희 변환기는 사람들이 변환하는 문서의 대부분을 차지하는 간단한 문서를 위한 것이에요. 비밀번호가 걸린 PDF와 암호화된 압축 파일은 열 수 없어요. 키가 없으면 내용을 읽을 수 없기 때문이에요. 도구에 한계가 있을 때는 지킬 수 없는 결과를 약속하는 대신 도구 페이지에 분명하게 적어 두었어요.
무료로 운영하는 방법
도구는 무료로 사용할 수 있어요. 워터마크도, 계정도, 하루 사용 한도도, 핵심 기능을 열어 주는 "프리미엄" 요금제도 없어요. 사이트는 광고로 운영돼요. 광고, 그리고 어떤 도구가 유용하게 쓰이는지 파악하기 위한 익명 통계는 개인정보 처리방침에 설명되어 있고 쿠키 설정에서 거부할 수 있어요. 둘 다 내가 처리하는 파일에는 접근할 수 없어요. 파일은 내 브라우저 말고는 어디에도 존재하지 않으니까요.
만드는 사람들
Squishly Tools는 작은 웹 스튜디오인 Ikonik Digital이 만들고 관리해요. 저희도 고객 작업을 하면서 이 도구들을 매일 쓰고 있고, 사실 그게 이 도구들이 만들어진 가장 큰 이유예요. 도구에 버그가 있거나, 변환 결과가 기대와 다르거나, 여기 있었으면 하는 파일 작업이 있다면 연락해 주세요. 보내 주신 내용은 모두 읽어요.
최근에 바뀐 내용은 변경 내역에서 확인할 수 있어요.