CheckMate

CheckMate를 소개합니다

누가 만들고, 왜 만들었고, 어떻게 운영하는지 솔직하게 적은 페이지입니다.

최종 업데이트: 2026년 4월 14일 · 작성자: CheckMate 운영자

운영자 소개

안녕하세요. CheckMate를 만들고 혼자 운영하고 있는 개발자입니다. 웹 프론트엔드와 TypeScript를 주로 다루며, 개인적으로 궁금했던 문제를 직접 코드로 풀면서 공개 서비스로 발전시키는 것을 좋아합니다. CheckMate는 그런 시도의 연장선입니다.

이 사이트는 회사 제품이 아니라 1인 사이드 프로젝트입니다. 이메일을 공개해 두었으니 궁금한 점이 있으면 언제든 직접 연락 주셔도 괜찮습니다.

왜 이 서비스를 만들었나요?

사실 시작은 아주 사소한 호기심이었습니다. 오래 알고 지낸 친구가 어느 날 조용히 팔로우를 끊었는지, 한동안 소식이 없던 지인이 아직 맞팔 상태인지 — 그런 것들이 문득 궁금했습니다. 인간관계를 데이터로 확인하고 싶다는 것이 민망하긴 했지만, 적어도 한 번쯤은 "나만 그런가?" 하는 불안을 정리하고 넘어가고 싶었습니다.

구글에 "인스타 언팔 확인"을 검색하면 수십 개의 도구가 나옵니다. 그런데 하나씩 눌러 보면 대부분 인스타그램 아이디와 비밀번호 로그인을 요구했습니다. 어떤 서비스는 결제를 요구했고, 어떤 서비스는 "무료"라 해놓고 결과를 보려면 결국 유료 플랜으로 유도했습니다. 로그인했다가 경고 이메일을 받고 계정이 일시 정지된 사례도 커뮤니티에 꽤 올라와 있었습니다.

개발자 입장에서 한 가지 명확한 사실이 떠올랐습니다. Instagram은 본인이 직접 "내 정보 다운로드" 기능을 통해 팔로워·팔로잉 목록을 JSON 파일로 내려받을 수 있게 해 둡니다. 이 파일만 있으면 비밀번호도, 외부 서버도, 자동화 스크립트도 필요 없이 "누가 나를 팔로우하는데 나는 안 하는지"를 브라우저에서 바로 계산할 수 있습니다. 한두 시간 프로토타입을 만들어 보니 정말로 가능했고, 그렇다면 나와 같은 이유로 불편함을 느끼는 다른 사람들도 안전하게 쓸 수 있도록 정리해 두자는 생각으로 CheckMate를 공개하게 되었습니다.

기술 스택과 아키텍처

CheckMate는 가능한 한 "서버에 데이터를 남기지 않는" 원칙으로 설계되어 있습니다. 업로드된 JSON/ZIP 파일은 사용자의 브라우저에서 JavaScript로 직접 파싱되고 비교되며, 서비스의 API 서버를 거치지 않습니다. 페이지를 닫는 순간 메모리 상의 데이터는 사라집니다.

사용 중인 기술

데이터가 흐르는 경로

  1. 사용자가 Instagram "내 정보 다운로드"로 받은 ZIP/JSON을 브라우저로 불러옵니다.
  2. 브라우저 내 JavaScript가 followers·following JSON을 파싱합니다. 외부로 전송되는 본문 데이터는 없습니다.
  3. 프로필 링크(href) 기준으로 "언팔·맞팔·팬·닉네임 변경"을 계산해 화면에 표시합니다.
  4. 페이지를 닫으면 데이터는 메모리에서 사라지며, 우리 서버에 사용자 데이터가 쌓이지 않습니다.

혼자 결정할 때 쓰는 5가지 사고 프레임

팀원 없이 혼자 서비스를 만들다 보면 의사결정이 한쪽으로 쏠리기 쉽습니다. 그래서 저는 중요한 판단을 내려야 할 때마다 다섯 개의 "역할 가면"을 번갈아 써보며 스스로에게 질문을 던지는 습관이 있습니다. 실제 팀이 있는 척 포장하려는 것이 아니라, 혼자서 놓치기 쉬운 관점을 체계적으로 점검하기 위한 개인 체크리스트입니다.

CTO 관점이 기능이 성능·보안·확장성 관점에서 문제가 없는가? 과도한 복잡도를 만들고 있지는 않은가?
프론트엔드 관점모바일에서 먼저 자연스럽게 동작하는가? 로딩 경험과 접근성은 괜찮은가?
SEO 관점이 변경이 검색 노출과 구조화 데이터에 어떤 영향을 주는가? 중복 콘텐츠를 만들지 않는가?
사용자 심리 관점결과 화면에서 불안·위축이 아닌 다음 행동이 떠오르도록 설계되었는가?
도메인 전문가 관점Instagram의 실제 데이터 구조와 정책 변경에 부합하는가? 현실에서 사용자가 만나는 에러까지 반영하는가?

이 프레임들이 충돌할 때는 "사용자의 데이터가 서버로 새어 나가지 않는다"라는 첫 번째 원칙을 기준으로 정리합니다. 나머지 모든 기능은 이 원칙과 충돌하지 않는 한도에서만 추가됩니다.

네 가지 운영 원칙

기능을 추가하거나 버릴 때 흔들리지 않기 위해, 처음부터 네 가지 원칙을 못 박아 두고 그 안에서만 의사결정을 합니다. 마케팅용 구호가 아니라, 매번 코드 리뷰와 배포 시에 실제로 확인하는 체크리스트입니다.

1. 원본 데이터는 서버로 보내지 않는다사용자가 업로드한 followers·following JSON은 브라우저 메모리에서만 파싱됩니다. 네트워크 탭과 공개 Git 커밋 히스토리에서 이 동작을 직접 확인할 수 있도록 설계했습니다. 서버에 원본을 올리는 기능은 어떤 사유로도 도입하지 않습니다.
2. 로그인·비밀번호를 요구하지 않는다Instagram 아이디와 비밀번호를 대신 입력받는 자격증명 대행 방식은 영구적으로 도입하지 않습니다. Instagram 공식 "내 정보 다운로드"로 받은 파일만 사용하므로, 계정 제재 위험 없이 쓸 수 있다는 점이 이 서비스의 존재 이유이기 때문입니다.
3. 결과 해석은 과장하지 않는다"당신을 버린 사람" 같은 감정적 레이블은 쓰지 않습니다. 결과 화면은 "내가 팔로우하지만 상대는 팔로우하지 않는 계정" 같은 사실 기반 문구로 통일하고, 수치가 의미하는 바와 기간 제한(팔로워 최근 약 1년) 같은 한계를 함께 표시합니다.
4. 변화가 있으면 기록한다Instagram 데이터 포맷이 바뀌거나 기능을 추가·삭제할 때, 같은 페이지에 날짜를 적어 변경 이력을 남깁니다. 블로그 카테고리의 "데이터 정책 변경" 글과 About 페이지의 변경 이력 섹션이 그 기록입니다.

운영 방식

CheckMate는 1인 사이드 프로젝트이므로 대기업 서비스 수준의 24/7 대응은 어렵지만, 다음과 같은 리듬으로 꾸준히 돌보고 있습니다.

연락처

버그 신고, 기능 제안, 데이터 삭제 요청, 협업 문의까지 모두 이메일로 받고 있습니다. 자세한 내용과 응답 시간은 문의 페이지에 정리해 두었습니다.

→ 문의하기 페이지로 이동

또는 바로 dlaudwls1203@gmail.com으로 메일 주셔도 괜찮습니다.

숫자로 보는 CheckMate

운영자가 개인인 만큼, "실제로 굴러가고 있는 서비스"임을 증명하는 데는 말보다 측정 가능한 숫자가 낫습니다. 아래 지표는 특정 시점의 스냅샷이며, 변화가 생기면 이 섹션을 갱신합니다.

첫 공개 배포
2026-03-28
평균 분석 소요 시간
3~8초
팔로워 3,000명 기준, 최근 실측
서버에 저장되는 원본 데이터
0바이트
followers/following 파일은 업로드되지 않습니다
공개 블로그 글 수
12편
가이드·사례·정책 해설 포함
이메일 평균 응답 시간
영업일 2~3일
버그·삭제 요청 우선 처리
최근 배포
2026-04-14
공개 Git 커밋에서 확인 가능

위 숫자는 2026-04-14 기준 운영자가 직접 측정·집계한 값이며, 동일 기준의 로그나 공개 커밋으로 교차 확인이 가능합니다.

운영 정보

서비스명CheckMate (체크메이트)
운영자CheckMate 운영자
이메일dlaudwls1203@gmail.com
GitHubgithub.com/thingineeer
서비스 URLhttps://insta-checkmate.com
개설일2026년 3월
최종 업데이트2026년 4월 14일

주요 변경 이력

기능이 추가되거나 정책·문서가 바뀐 시점을 날짜 역순으로 적어 둡니다. 자세한 코드 단위 변경은 GitHub 커밋 히스토리에서 교차 확인할 수 있습니다.

운영자에 대해 자주 받는 질문

개인이 운영하는 서비스라는 특성상 실제로 자주 들어오는 질문을 추려 투명하게 답변합니다. 이 Q&A는 구조화 데이터(FAQPage)로도 함께 제공됩니다.

Q. 왜 운영자 실명을 공개하지 않나요?

CheckMate는 1인 사이드 프로젝트이고, 운영자는 실명 대신 GitHub 핸들(thingineeer)과 이메일(dlaudwls1203@gmail.com)로 자신을 일관되게 드러냅니다. 검증 가능한 공개 채널(GitHub 저장소, 실제 응답되는 이메일)을 꾸준히 유지하는 것이 실명 노출보다 사용자 보호와 응대 책임 측면에서 더 중요하다고 판단했습니다. 사업자 형태가 아닌 개인 개발자의 사이드 프로젝트라는 점을 숨기기 위한 것이 아닙니다.

Q. 회사 서비스인가요, 개인 서비스인가요?

CheckMate는 법인 서비스가 아닌 개인 운영 사이드 프로젝트입니다. 기획, 설계, 프론트엔드 구현, 배포, 고객 응대까지 모두 운영자 한 명이 담당합니다. 기업 수준의 24/7 대응은 어렵지만, 이메일 문의는 영업일 기준 2~3일 내에 회신하는 것을 원칙으로 합니다.

Q. 서비스가 중단되면 어떻게 되나요?

운영을 중단하게 될 경우 최소 30일 전에 사이트 상단 공지와 블로그 변경 이력에 고지할 계획입니다. CheckMate는 업로드한 followers·following 파일 원본을 서버에 저장하지 않기 때문에, 서비스가 닫혀도 사용자의 원본 데이터는 사용자 자신의 기기에만 남아 있어 별도의 삭제 요청이 필요하지 않습니다. Firebase에 저장된 익명 사용 통계는 서비스 종료 시 일괄 삭제됩니다.

Q. GitHub 프로필이 운영자 본인 맞나요?

github.com/thingineeer는 CheckMate 운영자 본인의 계정입니다. About 페이지·Footer·연락 이메일에 동일한 핸들이 노출되고, CheckMate 관련 저장소의 커밋 기록도 동일한 계정으로 공개되어 있어 교차 검증이 가능합니다. 별도의 SNS 계정은 운영하지 않으며, 공식 소통 채널은 이메일과 GitHub 두 곳뿐입니다.