sinmb79/Jeoksan-portal

Jeoksan-portal

1
GitHub 스타
0
포크
TypeScript
언어
미표기
라이선스
2026.03.24
최근 푸시
2026.04.03
별표한 날

AI 분석

설치 난이도: 보통
큐레이터 노트
건설·건축 분야에서 표준품셈 기반 단가 조회 및 공사비 산출 기능이 필요하다면 이 프로젝트를 참고하거나 채택할 가치가 있습니다. 특히 관리자 워크플로우와 AI 정규화 기능이 잘 설계되어 있어, 유사한 포털을 구축할 때 아키텍처를 참고하기 좋습니다.

강점

  • 표준품셈 기반으로 건설 단가를 체계적으로 관리할 수 있는 포털을 제공합니다.
  • AI를 단가 생성이 아닌 정규화·분류에만 사용하여 데이터 신뢰성을 확보했습니다.
  • 관리자 콘솔에서 CSV 업로드부터 AI 정규화, 검토, 게시까지 워크플로우를 지원합니다.
  • 오프라인 Python 스크립트를 제공하여 웹 환경 없이도 데이터 정규화가 가능합니다.

약점

  • README에 실제 데모 사이트나 스크린샷이 없어 UI/UX를 미리 확인할 수 없습니다.
  • 프로젝트가 초기 단계(별 1개, 포크 0개)로 실제 사용자 피드백이나 커뮤니티 활동이 부족합니다.
  • 단가 데이터는 사용자가 직접 CSV로 준비해야 하며, 초기 데이터셋이 제공되지 않습니다.

주의사항

  • 본 서비스는 참고용이며, 실제 공사 계약·견적에 사용 시 반드시 전문가 검토가 필요합니다.
  • Supabase service_role key와 Anthropic API key는 외부에 노출되지 않도록 주의해야 합니다.
  • AI는 단가를 생성하지 않지만, 정규화 과정에서 데이터가 변경될 수 있으므로 최종 검토가 필요합니다.

시작 가이드

  • README에 데모 사이트 링크나 스크린샷을 추가하여 프로젝트의 실제 모습을 보여주세요.
  • 초기 단가 데이터 샘플 CSV 파일을 제공하여 사용자가 쉽게 시작할 수 있도록 개선하세요.
  • 테스트 코드나 CI/CD 설정을 추가하여 프로젝트의 안정성을 높이세요.
  • 커뮤니티 기여 가이드라인을 작성하여 오픈소스 참여를 유도하세요.

README 한국어 번역

이 번역은 AI가 원문 README를 옮긴 것입니다. 원문이 항상 우선합니다.

적산포털 (Jeoksan Portal)

건설·건축 전문가를 위한 표준품셈 기반 단가 참고 포털입니다. 표준품셈 등 공개 자료를 기반으로 공종별 단가를 조회하고, 공사비를 산출할 수 있습니다.

⚠️ 본 서비스는 참고용입니다. 실제 공사 계약·견적에 사용 시 반드시 전문가 검토가 필요합니다.


주요 기능

기능 설명
단가표 공종별 단가 조회 (필터, 정렬, CSV 내보내기)
공사비 계산기 다중 품목 선택 후 공사비 자동 산출
서식자료 건설 업무용 Excel·PDF 서식 다운로드
블로그 건설 관련 실무 정보 제공
관리자 콘솔 CSV 가져오기 → AI 정규화 → 검토 → 게시 워크플로우

기술 스택

  • 프레임워크: Next.js 14 (App Router)
  • 스타일링: Tailwind CSS + shadcn/ui
  • 데이터베이스: Supabase (PostgreSQL)
  • AI: Anthropic Claude API (데이터 정규화 전용, 단가 생성 불사용)

설치 및 실행 방법

사전 준비


1단계 — 코드 받기

git clone https://github.com/sinmb79/Jeoksan-portal.git
cd Jeoksan-portal
npm install

2단계 — Supabase 프로젝트 설정

  1. supabase.com 에서 새 프로젝트 생성
  2. 좌측 메뉴 SQL Editor 클릭
  3. 아래 파일 내용을 붙여넣고 실행:
   supabase/migrations/001_schema.sql

이 파일을 실행하면 테이블, RLS 정책, 7개 기본 공종 데이터가 자동으로 생성됩니다.

  1. 좌측 메뉴 Settings → API 에서 다음 값을 복사해 둡니다:
  • Project URL
  • anon (public) key
  • service_role key ⚠️ 외부에 노출 금지

3단계 — 환경변수 설정

cp.env.example.env.local

.env.local 파일을 열어 값을 채워줍니다:

NEXT_PUBLIC_SUPABASE_URL=https://xxxxxxxxxxxx.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=eyJ...
SUPABASE_SERVICE_ROLE_KEY=eyJ...
ANTHROPIC_API_KEY=sk-ant-...
ADMIN_SECRET=원하는-비밀번호

ADMIN_SECRET은 관리자 콘솔(/admin) 접속 비밀번호입니다. 안전한 문자열을 사용하세요.


4단계 — 개발 서버 실행

npm run dev

브라우저에서 http://localhost:3000 접속


관리자 콘솔 사용법

접속

/admin 경로로 이동 → .env.localADMIN_SECRET 값으로 로그인

단가 데이터 등록 절차

① /admin/import — CSV 파일 업로드
      ↓ Claude AI가 품목명 정규화, 이상값 표시
② /admin/import — 결과 확인 및 승인
      ↓
③ /admin/prices — 검토 큐에서 최종 확인
      ↓ "게시" 버튼 클릭
④ 공개 단가표에 표시됨

CSV 파일 형식

단가 가져오기에 사용하는 CSV 파일은 다음 컬럼이 필요합니다:

item_code,item_name,unit,labor_cost,material_cost,expense_cost
RC-001,철근콘크리트 타설 (일반),m3,85000,45000,5000
컬럼 설명 예시
item_code 품목 코드 (고유값) RC-001
item_name 품목명 철근콘크리트 타설
unit 단위 m3, m2,
labor_cost 노무비 (원) 85000
material_cost 재료비 (원) 45000
expense_cost 경비 (원) 5000

서비스 론칭 전 체크리스트

  • [ ] DB 마이그레이션 실행 (supabase/migrations/001_schema.sql)
  • [ ] 7개 기본 공종 시드 확인
  • [ ] 50개 이상 단가 데이터 게시 완료
  • [ ] 서식자료 3개 이상 등록
  • [ ] 블로그 포스트 10개 이상 작성
  • [ ] /about 페이지 내용 검토
  • [ ] Vercel 등 배포 환경에 환경변수 설정

Vercel 배포

GitHub 저장소를 Vercel에 연결하면 자동 배포됩니다.

Vercel 환경변수 설정 (Project Settings → Environment Variables):

변수명 노출 범위
NEXTPUBLICSUPABASE_URL All
NEXTPUBLICSUPABASEANONKEY All
SUPABASESERVICEROLE_KEY Server only
ANTHROPICAPIKEY Server only
ADMIN_SECRET Server only

Python 스크립트 (오프라인 데이터 정규화)

CSV 파일을 웹 어드민 없이 오프라인에서 정규화할 수 있습니다.

pip install anthropic pandas
python scripts/import_prices.py 단가데이터.csv "국토교통부 표준품셈 2024"

출력: 단가데이터_normalized.json (정규화된 데이터, 이상값 표시 포함)

이상값 통계 검증:

python scripts/validate_prices.py 단가데이터_normalized.json

데이터 정책

  • AI는 품목명 정규화·분류에만 사용됩니다. 단가 값은 절대 AI로 생성하지 않습니다.
  • 모든 단가 데이터는 출처(공공기관 공개 자료)가 명시됩니다.
  • 게시된 데이터는 raw → reviewed → published 워크플로우를 거쳐 관리자가 직접 검토합니다.

라이선스

MIT License — 자유롭게 사용, 수정, 배포 가능합니다. 단, 실제 공사 계약에 활용 시 발생하는 결과에 대해 프로젝트 기여자는 책임지지 않습니다.

원본 저장소: sinmb79/Jeoksan-portal

라이선스: 미표기

게재 제외를 원하시면 삭제 요청을 보내주세요.