프로젝트 배경
1) 문제점 - 건설 현장의 불안정한 네트워크 환경에서 모바일 신고 폼 제출 실패 시 데이터 유실 방지 — localStorage에 신고 데이터를 임시 저장하고 네트워크 복구 시 자동 재전송하는 오프라인 큐 패턴 구현 - GPS 좌표가 건물 내부나 지하에서 부정확하게 측정되는 문제 — 현장별 구역 목록(드롭다운)을 대안 입력 수단으로 제공하고, GPS 정확도 임계값(50m) 미달 시 수동 위치 선택을 유도
프로젝트 성과
GPS 연동 모바일 사고 신고 워크플로우 구현
Geolocation API로 사고 발생 좌표를 자동 입력하고, 카메라 촬영→Canvas API 압축→위험도 분류를 3단계로 완료하는 모바일 최적화 신고 폼 설계
시정조치 전후 사진 비교 슬라이더 설계
clip-path 기반 before/after 비교 슬라이더로 시정조치 전후 사진을 드래그 라인으로 나란히 비교, 스텝 프로그레스 바와 연계하여 4단계 워크플로우 진행 상태 시각화
위험도 3단계 색상 코딩 카드 시스템 구현
긴급(빨강)·경고(주황)·주의(노랑) 3단계 색상 코딩으로 신고 건 우선순위를 즉시 식별, 긴급 건 상단 고정 + pulse 애니메이션으로 즉각적 주의 환기 유도
RadarChart 현장별 안전 지표 비교 시각화 구축
Recharts RadarChart로 사고율·처리속도·재발률·신고건수·시정완료율 5축을 현장 간 비교 시각화, 다중 현장 오버레이로 상대적 안전 수준 파악 구조 설계
서버사이드 리포트 자동 생성 엔진 적용
ExcelJS 스트리밍 모드로 대량 통계 엑셀 생성, PDFKit으로 월간 안전 리포트 PDF 자동 생성, 기간·현장 필터 조합을 쿼리 파라미터로 전달하는 리포트 API 설계
핵심 기능
진행 단계
건설 안전 도메인 분석 및 FastAPI 프로젝트 구조 설계
2025.07.
사고 유형·위험도 분류 체계 설계, SQLAlchemy 모델 10개 테이블 정의, FastAPI 라우터·의존성 주입·Pydantic v2 스키마 레이어 구조 수립
프로젝트 상세
1) 포트폴리오 소개 건설 현장 작업자가 모바일로 안전 사고·위험 요소를 즉시 신고하고, 안전관리자가 접수→조사→시정조치→완료 워크플로우로 처리하는 안전관리 시스템을 Python + FastAPI + PostgreSQL 기반으로 설계·구현했습니다. GPS 위치 기반 사고 지점 지도 표시, 위험도 분류(긴급/경고/주의), 시정조치 사진 비교 뷰, 현장별 통계 대시보드를 포함한 6개 핵심 화면을 구축했습니다.







