Stateless Tools

왜 만들었나요?

PDF를 합치거나 스캔 문서에서 글자를 뽑아야 할 때, 검색하면 나오는 사이트 대부분이 파일을 자기 서버로 받아 처리합니다. 사내 문서나 계약서, 개인정보가 든 파일이라면 그걸 올릴 수 없습니다. 회사 정책이 막고 있거나, 막지 않더라도 그 파일이 어디에 얼마나 남는지 알 수 없기 때문입니다. 이 사이트는 그 문제를 없애려고 만들었습니다. 여기 있는 도구는 파일과 입력값을 서버로 보내지 않고 브라우저 안에서 끝냅니다. 페이지를 닫으면 아무것도 남지 않습니다.

언제 이 방식이 필요한가요?

올릴 수 없는 파일을 다룰 때

계약서 PDF를 쪼개거나, 사내 자료를 스캔한 이미지에서 글자를 뽑거나, 고객 데이터가 든 파일의 해시를 확인해야 할 때입니다. 파일이 기기를 떠나지 않으므로 반출 승인을 받을 일이 없습니다.

붙여넣는 값이 자격증명일 때

JWT 토큰, API 키가 든 요청, 운영 DB에서 뽑은 JSON을 검사하는 일이 잦습니다. 이런 값은 제3자 서버에 남으면 그 자체로 사고입니다. 디코딩과 검증을 브라우저에서 끝내는 이유입니다.

망이 분리되어 있을 때

내부망에서는 외부 API를 부르는 도구가 아예 동작하지 않습니다. 여기 도구는 페이지가 한 번 열리면 추가 통신 없이 계산하므로 그런 환경에서도 그대로 씁니다.

운영 기준

1. 브라우저 우선

서버 처리 없이 끝낼 수 있는 작업은 브라우저 메모리에서 완료하도록 설계합니다.

2. 과한 기능보다 자주 쓰는 기능

실제로 복사하거나 비교하고 검증하는 출력에 집중하고, 설정은 최대한 짧게 유지합니다.

3. 공개된 피드백 경로

오류와 개선 요청은 GitHub 저장소나 공개된 채널을 통해 확인하고 업데이트 방향을 정리합니다.

4. 심사 가능한 기본 정보

사이트 소개, 개인정보 처리 안내, 문의 페이지를 공개해 운영 주체와 정책을 확인할 수 있게 유지합니다.

현재 운영자는 taxijjang이며, 이 사이트는 개인 프로젝트로 계속 다듬는 중입니다.

누가, 어떻게 만드나요?

1인이 운영합니다. 사람 손이 하나뿐이라 눈으로 훑는 검수로는 30개가 넘는 도구를 감당할 수 없어서, 배포 전에 자동 검증을 통과하지 못하면 나가지 않도록 만들었습니다.

실제 브라우저로 검사합니다

정적 분석이 아니라 헤드리스 크롬을 띄워 모든 페이지를 실제로 렌더링한 뒤, 화면에서 계산된 값을 읽어 판정합니다. CSS가 실제로 적용된 뒤의 색과 크기를 보기 때문에 "규칙은 써 뒀는데 안 먹는" 경우를 잡아냅니다.

명암비와 터치 영역

모든 텍스트의 명암비를 배경과 합성해서 계산하고 WCAG 기준 미달을 찾습니다. 버튼과 입력 요소는 44px 이상인지 확인합니다. 밝은 테마와 어두운 테마를 따로 검사합니다.

가로 스크롤과 겹침

세 가지 화면 폭에서 화면 밖으로 삐져나가는 요소를 찾습니다. 일부러 만든 가로 스크롤 영역은 예외 처리해서 오탐을 냅니다.

업로드가 없는지 확인합니다

파일을 다루는 도구는 실제로 파일을 넣고 네트워크 요청이 나가는지 감시합니다. "브라우저에서만 처리한다"는 문구가 사실인지 코드가 아니라 동작으로 검증합니다.

날짜 계산은 단위 테스트로

윤년, 월말 자르기, 서머타임 경계처럼 틀리기 쉬운 경우를 49가지 검사로 고정해 뒀습니다. 실제로 이 검사가 1월 31일에서 3월 1일까지의 개월·일 계산 오류를 잡아냈습니다.

영어 페이지 누락

영어로 전환했을 때 한국어가 남아 있는 지점을 전 페이지에서 찾습니다. 번역을 빠뜨리면 배포가 막힙니다.

소스는 공개되어 있습니다. 브라우저에서만 처리한다는 주장은 저장소와 브라우저 개발자 도구의 네트워크 탭으로 직접 확인하실 수 있습니다.

비용과 광고

왜 무료인가요?

도구가 브라우저에서 도는 정적 사이트라 서버 연산 비용이 없습니다. 드는 돈은 도메인과 정적 호스팅 정도이고, 사용자가 늘어도 비용이 비례해서 늘지 않습니다. 그래서 가입이나 결제를 받을 이유가 없습니다.

광고를 붙이나요?

운영비를 충당할 만큼의 광고를 붙일 계획입니다. 다만 도구를 쓰는 화면 한가운데를 가리거나, 결과 영역을 밀어내거나, 내려받기 버튼처럼 보이는 광고는 넣지 않습니다. 문의·개인정보·약관 페이지에는 광고를 넣지 않습니다.

광고가 내 데이터를 보나요?

아닙니다. 도구에 넣은 값은 애초에 페이지 밖으로 나가지 않으므로 광고 스크립트가 읽을 대상 자체가 없습니다. 광고 쿠키와 맞춤 광고를 끄는 방법은 개인정보 처리 안내에 정리해 두었습니다.

유료 기능이 생기나요?

계획에 없습니다. 서버가 필요한 기능을 넣기 시작하면 이 사이트의 존재 이유가 사라지기 때문입니다. 브라우저에서 못 하는 일은 넣지 않는 쪽을 택합니다.

추가 정보와 피드백 경로