# 지오정보기술 홈페이지 (zioinfo-web)

> Spring Boot 3.2.5 + React 18 + Vite | 서버: zioinfo.co.kr:8082

---

## 기술 스택

| 레이어 | 기술 |
|--------|------|
| Backend | Spring Boot 3.2.5 (Java 17), JPA, H2 |
| Frontend | React 18 + Vite, React Router DOM |
| 인증 | JWT (관리자) / 자체 JWT (회원) |
| 서버 | 101.79.17.164, Spring Boot 포트 8082 |
| 빌드 | `mvn clean package -DskipTests` → jar → `/opt/zioinfo/app/app.jar` |

## 배포 파이프라인

```
1. 프론트 빌드: node_modules\.bin\vite.cmd build --outDir C:\Temp\zioinfo-build
2. 백엔드 배포: python C:\GUARDiA\deploy_history.py (패턴 참조)
3. 서버 재시작: systemctl restart zioinfo
```

## DB 관리 항목 현황

| 항목 | 엔티티 | 공개 API | 관리자 UI |
|------|--------|---------|---------|
| 뉴스/공지 | News | GET /api/news | /admin/news |
| 채용공고 | Recruit | GET /api/recruit | /admin/recruit |
| 회사 연혁 | CompanyHistory | GET /api/history | /admin/history |
| 문의 | Inquiry | POST /api/inquiry | /admin/inquiries |
| 회원 | Member | - | /admin/members |

## 하네스: 홈페이지 CMS

**목표:** 홈페이지 정적 텍스트(FAQ·레퍼런스·파트너사·CEO인사말·조직도 등)를 DB로 전환하고 관리자에서 CRUD 가능하게 유지

**트리거:** 홈페이지 콘텐츠를 DB로 관리, 관리자 페이지 추가, FAQ·레퍼런스·파트너사 등 새 항목 DB화 요청 시 `homepage-cms-orchestrator` 스킬을 사용하라.

**변경 이력:**
| 날짜 | 변경 내용 | 대상 | 사유 |
|------|----------|------|------|
| 2026-05-31 | 초기 하네스 구성 | 전체 | 홈페이지 CMS 체계화 |
| 2026-05-31 | 회사 연혁 DB 전환 완료 | CompanyHistory + AdminHistory | 첫 번째 DB화 사례 |
