kintex/src/frontend
zio a963c69141 feat(impl): M2~M5 배선(501→200) + 프론트 화면 4종
backend: M2 배치/규정검증(PostGIS)·M3 설계·M4 배선/견적·M5 RenderJob + 인증(login/workspaces/accept-invite) 매퍼 배선으로 501 해소. M2 자동배치 3안 생성→선택/병합→규정 재검증. 계약 확장(Violation 좌표·LayoutDto.hall·AutoLayoutOption.booths, additive NON_NULL). 신규 HallMapper·UtilityOrderMapper(기존 테이블). gradlew build 통과.

frontend: SCR-02 대시보드·SCR-06 설계스튜디오(4샷+Before/After)·SCR-07 배선뷰(적/청/녹)·SCR-12 갤러리 + CompareSlider(reroomai)·WiringCanvas. tsc/vite build EXIT 0.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-11 18:37:26 +09:00
..
src feat(impl): M2~M5 배선(501→200) + 프론트 화면 4종 2026-07-11 18:37:26 +09:00
.env.example feat(v2.0): Phase A 아키텍처 + WISE 개발문서 + PM/PMO + DB 계층 + 프론트 착수 2026-07-11 18:10:01 +09:00
.gitignore feat(v2.0): Phase A 아키텍처 + WISE 개발문서 + PM/PMO + DB 계층 + 프론트 착수 2026-07-11 18:10:01 +09:00
index.html feat(v2.0): Phase A 아키텍처 + WISE 개발문서 + PM/PMO + DB 계층 + 프론트 착수 2026-07-11 18:10:01 +09:00
package-lock.json feat(v2.0): Phase A 아키텍처 + WISE 개발문서 + PM/PMO + DB 계층 + 프론트 착수 2026-07-11 18:10:01 +09:00
package.json feat(v2.0): Phase A 아키텍처 + WISE 개발문서 + PM/PMO + DB 계층 + 프론트 착수 2026-07-11 18:10:01 +09:00
README.md feat(v2.0): Phase A 아키텍처 + WISE 개발문서 + PM/PMO + DB 계층 + 프론트 착수 2026-07-11 18:10:01 +09:00
tsconfig.app.json feat(v2.0): Phase A 아키텍처 + WISE 개발문서 + PM/PMO + DB 계층 + 프론트 착수 2026-07-11 18:10:01 +09:00
tsconfig.json feat(v2.0): Phase A 아키텍처 + WISE 개발문서 + PM/PMO + DB 계층 + 프론트 착수 2026-07-11 18:10:01 +09:00
tsconfig.node.json feat(v2.0): Phase A 아키텍처 + WISE 개발문서 + PM/PMO + DB 계층 + 프론트 착수 2026-07-11 18:10:01 +09:00
vite.config.d.ts feat(v2.0): Phase A 아키텍처 + WISE 개발문서 + PM/PMO + DB 계층 + 프론트 착수 2026-07-11 18:10:01 +09:00
vite.config.js feat(v2.0): Phase A 아키텍처 + WISE 개발문서 + PM/PMO + DB 계층 + 프론트 착수 2026-07-11 18:10:01 +09:00
vite.config.ts feat(v2.0): Phase A 아키텍처 + WISE 개발문서 + PM/PMO + DB 계층 + 프론트 착수 2026-07-11 18:10:01 +09:00

KINTEX AI 전시관리 — Frontend

React 18 + Vite 5 + TypeScript. 백엔드(Spring Boot :8080) 계약(_workspace/01_backend_contracts.md) 기반.

개발

npm install
npm run dev        # Vite 개발 서버 :5173 (/api·/ws → :8080 프록시)
npm run typecheck  # tsc -b (타입 체크)
npm run build      # tsc -b && vite build

.env.example.env 복사. VITE_BACKEND_ORIGIN으로 백엔드 오리진 지정(기본 http://localhost:8080).

구조

  • src/styles/tokens.css — 디자인 토큰 단일 출처(design.md §1). 하드코딩 금지, 이 변수만 참조.
  • src/api/client(JWT·봉투·오류코드), endpoints(계약 래퍼), types(응답 shape), websocket(STOMP RenderJob).
  • src/store/authStore.ts — 인증/워크스페이스 상태(zustand).
  • src/components/ui/ — StatusBadge·DdayChip·AiLabel·Button·AiImage(워터마크 상시)·States.
  • src/components/layout/AppShell.tsx — 인증 셸(사이드바+상단바).
  • src/screens/login/ — SCR-01 로그인·워크스페이스·초대(등록업체 차단).
  • src/screens/floorplan/ — SCR-03 배치 에디터(SVG 캔버스·AI 자동배치·검증).

원칙

  • 백엔드 응답 shape과 정확히 일치. 불일치는 _workspace/02_frontend_progress.md에 기록.
  • AI 생성 이미지 워터마크·고지문 제거 불가. 접근성 WCAG AA.
  • 캔버스 편집은 데스크톱 전용(모바일은 뷰어+승인).