내 컴퓨터에서 돌아가는
건설 원가정보 관리 시스템 —
Construction Toolkit 공개
표준품셈·조달청 단가를 직접 관리하는 자가설치형 웹 앱.
구독료 없음 · 외부 서버 없음 · 내 데이터는 내 컴퓨터에.
건설·건축 현장에서 단가를 조회하고 공사비를 계산할 때, 매번 표준품셈 책을 뒤지거나 조달청 홈페이지를 들락날락하게 됩니다. 엑셀로 관리하면 버전이 쌓이고, 유료 서비스를 쓰자니 구독료가 부담스럽습니다.
Construction Toolkit은 이 문제를 해결하는 자가설치형 웹 앱입니다. 내 컴퓨터에서 실행되기 때문에 데이터가 외부로 나가지 않고, 구독료도 없습니다. 표준품셈 PDF와 조달청 API에서 데이터를 수집하는 Python 스크립트까지 포함되어 있습니다. 오늘 MIT 라이선스로 전체 소스코드를 공개합니다.
데이터가 내 컴퓨터 밖으로 나가지 않습니다.
구독료가 없습니다. 완전 오픈소스입니다.
I. 주요 기능
단가 조회부터 공사비 계산, 서식 관리까지
📋 단가표 조회
공종별 필터·검색·정렬. CSV 내보내기. 공종 상세 전용 페이지 지원.
🧮 공사비 계산기
단가표에서 항목을 선택해 공사비 합계 산출. 인쇄·출력 기능 내장.
📈 자재 시세 이력
자재별 최신 단가 및 과거 시세 이력 차트. 가격 추이 한눈에 확인.
📄 서식 파일 관리
견적서·공사계획서 등 서식 파일 업로드 및 다운로드 관리.
🔄 데이터 수집 스크립트
표준품셈 PDF 파서 · 조달청 공공 API 커넥터 · CSV 직접 입력 도구 포함.
⚙ 관리자 콘솔
데이터 검토→게시 승인 흐름. 잘못된 데이터는 반려 처리. DB GUI(Adminer) 포함.
II. 데이터 검토·발행 흐름
수집한 단가는 반드시 검토를 거쳐야 단가표에 표시됩니다
(CSV/API/PDF)
[raw]
/admin/prices
[published]
/prices
모든 가져온 데이터는 검토 대기 상태로 쌓입니다. 관리자 콘솔(/admin/prices)에서 내용이 맞으면 게시, 잘못됐으면 반려를 선택합니다. 게시 후에는 단가표에 즉시 반영됩니다.
III. 전체 화면 구성
| 경로 | 기능 |
|---|---|
| /prices | 단가표 — 공종별 필터, 검색, 정렬, CSV 내보내기 |
| /materials | 자재 시세 — 최신 단가 + 이력 차트 |
| /calculator | 공사비 계산기 — 항목 선택 → 합계 산출 → 인쇄 |
| /templates | 서식 파일 — 견적서·공사계획서 다운로드 |
| /blog | 업무 메모 및 정보 공유 블로그 |
| /admin | 관리자 대시보드 — 데이터 현황 및 바로가기 |
| /admin/import | 데이터 가져오기 — CSV 업로드 · 직접 입력 |
| /admin/prices | 단가 검토 — 검토 대기 목록 → 게시/반려 |
| /admin/materials | 자재 관리 — 자재 등록, 시세 이력 입력 |
| /settings | 앱 설정 — 회사명, 기준년도, 면책 문구 |
IV. 설치 방법
Docker Desktop 하나면 됩니다 — 4단계
Docker Desktop 설치
docker.com/products/docker-desktop 에서 운영체제에 맞는 버전을 설치합니다. 설치 후 실행하면 트레이 아이콘이 초록색이 됩니다.
저장소 복사
git clone https://github.com/sinmb79/construction-toolkit.git cd construction-toolkit
git이 없다면 GitHub 페이지에서 Code → Download ZIP으로 다운로드 후 압축 해제합니다.
환경설정 파일 생성
# Windows copy .env.example .env # macOS / Linux cp .env.example .env
.env 파일을 열어 POSTGRES_PASSWORD를 강력한 비밀번호로 변경하는 것을 권장합니다. DATABASE_URL의 비밀번호도 같이 변경하세요.
실행 및 접속
docker compose up -d
처음 실행 시 이미지 다운로드로 2~5분 소요됩니다. 완료 후 브라우저에서 http://localhost:3000 접속합니다.
http://localhost:3000/settings 에서 회사명과 기준년도를 먼저 설정하세요. 이후 /admin/import 에서 데이터를 입력하면 됩니다.
V. 데이터 입력 4가지 방법
이 툴킷은 UI만 제공합니다. 데이터는 직접 수집해야 합니다
실제 단가 데이터는 포함되어 있지 않습니다. 아래 4가지 방법 중 상황에 맞게 선택하세요.
| 방법 | 설명 | 난이도 |
|---|---|---|
| CSV 업로드 | 엑셀에서 정해진 형식으로 저장 후 /admin/import에 업로드 | ⭐ 쉬움 |
| 직접 입력 | /admin/import 직접 입력 탭에서 항목 하나씩 입력 | ⭐ 쉬움 |
| 조달청 API | data.go.kr에서 무료 API 키 발급 후 ppa.py 스크립트 실행 | ⭐⭐ 보통 |
| 표준품셈 PDF | 국토교통부 PDF 다운로드 후 pps.py 파서 실행 | ⭐⭐ 보통 |
# 조달청 API 수집 예시 pip install requests python scripts/connector/ppa.py --year 2024 --category RC # 표준품셈 PDF 파싱 예시 pip install pdfplumber pandas python scripts/connector/pps.py --file 표준품셈2024.pdf
VI. 시스템 구성
Docker Compose로 3개 컨테이너가 함께 실행됩니다
| 컨테이너 | 역할 | 접속 주소 |
|---|---|---|
| app (Next.js) | 웹 애플리케이션 본체 | http://localhost:3000 |
| db (PostgreSQL) | 데이터베이스 | localhost:5432 |
| adminer | DB 직접 조회 GUI | http://localhost:8080 |
이 앱은 인증 없는 로컬 전용입니다. 외부 네트워크에 포트를 노출하지 마세요. .env 파일은 절대 GitHub에 올리지 마세요 (이미 .gitignore에 포함). 조달청 API 키는 .env에만 보관하세요.
📦 GitHub에서 받아보기
전체 소스코드 · Docker 설정 · Python 스크립트 · 한국어 가이드 6종 포함
MIT 라이선스 — 자유롭게 사용, 수정, 배포 가능