# Show GN: 전국 학교 공시 데이터 검색·비교 서비스

> Clean Markdown view of GeekNews topic #30720. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=30720](https://news.hada.io/topic?id=30720)
- GeekNews Markdown: [https://news.hada.io/topic/30720.md](https://news.hada.io/topic/30720.md)
- Type: show
- Author: [chunsik2](https://news.hada.io/@chunsik2)
- Published: 2026-06-22T17:03:42+09:00
- Updated: 2026-06-22T17:03:42+09:00
- Original source: [woorischool.com](https://woorischool.com/)
- Points: 3
- Comments: 0

## Topic Body

안녕하세요. 학교 정보를 찾을 때 여러 사이트와 엑셀 파일을 오가야 하는 불편을 줄여 보고 싶어서 **우리학교어때**를 만들었습니다.  
  
개발 전 과정은 바이브코딩 방식으로 진행했습니다. AI에게 코드를 한 번 생성해 달라고 한 뒤 끝낸 프로젝트는 아니고, 요구사항을 문서로 나누고 구현 결과를 실제 데이터와 대조하면서 오류를 다시 고치는 과정을 반복했습니다. 특히 학교 데이터는 화면이 그럴듯한 것보다 다른 학교에 잘못 연결되지 않는 것이 더 중요하다고 판단해 매핑과 검증에 가장 많은 시간을 썼습니다.  
  
서비스에서는 학교명 검색, 같은 학교급끼리 비교, 지역별 공시 데이터 비교, 교과별 학업성취 자료와 학교폭력대책심의위원회 심의 결과 등을 확인할 수 있습니다. 원본에서 확인되는 수치와 자체 계산 지표는 구분해서 표시하고 있습니다.  
  
##### 데이터 구성  
- 학교 기본정보  
- 학급, 학생 수  
- 교원 수  
- 학생 이동 정보(전입, 전출)  
- 안전교육 이수 시간  
- 학교폭력대책심의위원회 결과  
- 교과별 학업성취(평균 점수만 반영)  
  
##### 기술 구성  
- Next.js App Router, TypeScript, Tailwind CSS  
- Firebase Firestore와 Firebase Admin SDK  
- Vercel 배포 및 GitHub Actions 자동화  
- 브라우저 검색용 정적 `search-index.json`  
- 학교 상세·랭킹·비교 페이지용 정적 JSON  
- NEIS·학교알리미 데이터 수집 및 `row_hash` 기반 변경분 반영  
- 학교알리미 XLS 파일의 표 구조를 판별하는 수동 공시 자료 가져오기 도구  
  
##### 만들면서 예상보다 어려웠던 부분  
  
가장 까다로웠던 것은 학교명 매칭이었습니다. 이름이 같은 학교, 이름이 변경된 학교, 폐교된 학교, 학교급만 다른 학교가 섞여 있어 학교명만으로 연결하면 오매핑이 생길 수 있었습니다. 학교 코드와 교육청 정보, 지역, 학교급을 우선 사용하고 자동으로 확정할 수 없는 항목은 별도 검증 대상으로 남기는 방식으로 바꿨습니다.  
  
학업성취와 학교폭력 공시 XLS도 파일마다 표의 열 위치가 완전히 같지 않았습니다. 특정 열 번호를 고정해서 읽으면 정상적인 숫자처럼 보이는 잘못된 값이 들어갈 수 있어, 표 제목과 헤더를 확인해 형식을 구분하고 범위를 벗어나는 값은 반영하지 않도록 검증 단계를 넣었습니다.

## Comments



_No public comments on this page._
