Files
superport/.claude/project_analysis.md
JiWoong Sul e0bc5894b2 UI 전체 리디자인 및 개선사항 적용
## 주요 변경사항:

### UI/UX 개선
- shadcn/ui 스타일 기반의 새로운 디자인 시스템 도입
- 모든 주요 화면에 대한 리디자인 구현 완료
  - 로그인 화면: 모던한 카드 스타일 적용
  - 대시보드: 통계 카드와 차트를 활용한 개요 화면
  - 리스트 화면들: 일관된 테이블 디자인과 검색/필터 기능
- 다크모드 지원을 위한 테마 시스템 구축

### 기능 개선
- Equipment List: 고급 필터링 (상태, 담당자별)
- Company List: 검색 및 정렬 기능 강화
- User List: 역할별 필터링 추가
- License List: 만료일 기반 상태 표시
- Warehouse Location: 재고 수준 시각화

### 기술적 개선
- 재사용 가능한 컴포넌트 라이브러리 구축
- 일관된 코드 패턴 가이드라인 작성
- 프로젝트 구조 분석 및 문서화

### 문서화
- 프로젝트 분석 문서 추가
- UI 리디자인 진행 상황 문서
- 코드 패턴 가이드 작성
- Equipment 기능 격차 분석 및 구현 계획

### 삭제/리팩토링
- goods_list.dart 제거 (equipment_list로 통합)
- 불필요한 import 및 코드 정리

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-07 19:45:32 +09:00

5.3 KiB

Superport Flutter 프로젝트 분석 보고서

1. 프로젝트 개요

기본 정보

  • 프로젝트명: superport (버전 0.1.0)
  • 프레임워크: Flutter (SDK ^3.7.2)
  • 플랫폼: Web, iOS, Android, macOS, Windows, Linux
  • 주요 목적: 장비 입출고 관리를 중심으로 한 ERP 시스템

현재 상태

  • 기존 UI에서 shadcn/ui 스타일의 새로운 디자인으로 리디자인 진행 중
  • 파일명 패턴: 기존 파일명 + _redesign 접미사

2. 프로젝트 구조

superport/
├── android/          # Android 플랫폼 빌드 설정
├── ios/              # iOS 플랫폼 빌드 설정
├── linux/            # Linux 플랫폼 빌드 설정
├── macos/            # macOS 플랫폼 빌드 설정  
├── windows/          # Windows 플랫폼 빌드 설정
├── web/              # Web 플랫폼 빌드 설정
├── lib/              # Flutter 소스 코드
│   ├── models/       # 데이터 모델
│   ├── screens/      # 화면 구성
│   ├── services/     # 서비스 레이어
│   └── utils/        # 유틸리티
├── assets/           # 에셋 리소스
├── doc/              # 프로젝트 문서 (PRD 포함)
├── test/             # 테스트 코드 (현재 비어있음)
└── pubspec.yaml      # 프로젝트 설정 및 의존성

3. 주요 의존성

패키지 버전 용도
flutter_localizations SDK 다국어 지원 (한국어/영어)
pdf ^3.10.4 PDF 생성
printing ^5.11.0 인쇄 기능
provider ^6.1.5 상태 관리 (현재 미사용)
wave ^0.2.2 웨이브 애니메이션
flutter_svg ^2.0.10 SVG 이미지 지원
google_fonts ^6.1.0 Google Fonts 사용

4. 아키텍처 및 패턴

4.1 상태 관리

  • MVC 패턴의 변형 사용
  • Controller 클래스로 비즈니스 로직 분리
  • MockDataService 싱글톤으로 데이터 관리
  • 일부 ChangeNotifier 사용 (예: LoginController)

4.2 라우팅

  • Named Route 방식
  • Routes 클래스에 라우트 상수 정의
  • onGenerateRoute를 통한 동적 라우팅

4.3 데이터 관리

  • 현재 실제 API 없이 Mock 데이터 서비스 사용
  • 모든 CRUD 작업을 메모리에서 처리
  • 향후 실제 API 연동 시 서비스 레이어만 교체 예정

5. 주요 기능 및 화면

5.1 인증

  • 로그인 (/login)
    • 이메일/비밀번호 기반 인증
    • Wave 애니메이션 배경
    • 테스트 계정 지원

5.2 대시보드

  • Overview (/)
    • 통계 요약 (장비, 회사, 사용자, 라이센스)
    • 최근 활동 내역
    • 빠른 작업 버튼

5.3 장비 관리

  • 장비 목록 (/equipment)
    • 입고/출고/대여 상태 관리
    • 검색 및 필터링
    • 일괄 처리 기능
  • 입고 관리 (/equipment-in/add)
  • 출고 관리 (/equipment-out/add)

5.4 기타 관리 기능

  • 회사 관리: 고객사/공급업체, 본사/지점 관리
  • 사용자 관리: 직원 정보 및 권한 관리
  • 라이센스 관리: 소프트웨어 라이센스 추적
  • 입고지 관리: 장비 입고 위치 관리

6. UI/UX 디자인 시스템

6.1 기존 디자인

  • Tailwind 스타일의 색상 체계
  • Material Icons 사용
  • Metronic 디자인 시스템 참고
  • 단일 테마 (라이트 모드만)

6.2 새로운 디자인 (리디자인)

  • shadcn/ui 디자인 시스템 도입
  • 테마 시스템 (theme_shadcn.dart)
    • 의미론적 색상 체계
    • 일관된 타이포그래피 (Inter 폰트)
    • 표준화된 간격 및 라운드 시스템
  • 컴포넌트 라이브러리
    • ShadcnCard, ShadcnButton, ShadcnInput 등
    • 재사용 가능한 표준 컴포넌트
  • 레이아웃
    • Microsoft Dynamics 365 스타일
    • 사이드바 접기/펼치기
    • 브레드크럼 네비게이션

7. 현재 진행 상황

7.1 완료된 리디자인

  • 테마 시스템 구축
  • 공통 컴포넌트 라이브러리
  • 앱 레이아웃
  • 로그인 화면
  • 대시보드
  • 모든 리스트 화면 (회사, 장비, 사용자, 라이센스, 입고지)

7.2 남은 작업

  • Form 화면들의 리디자인
  • 다크 모드 지원
  • 반응형 디자인 개선
  • 실제 API 연동
  • 테스트 코드 작성
  • 국제화(i18n) 구현

8. 기술적 특이사항

  1. 크로스 플랫폼: 모든 주요 플랫폼 지원
  2. 웹 중심 개발: 데스크톱 웹 환경에 최적화
  3. 모던 UI: shadcn/ui 스타일의 현대적 디자인
  4. 타입 안정성: Dart의 강타입 시스템 활용
  5. 컴포넌트 기반: 재사용 가능한 위젯 아키텍처

9. 권장 개선사항

9.1 단기 개선

  1. Form 화면 리디자인 완료
  2. 입력 유효성 검사 강화
  3. 로딩/에러 상태 UI 개선
  4. 키보드 단축키 지원

9.2 중장기 개선

  1. 실제 백엔드 API 연동
  2. 단위/통합 테스트 추가
  3. CI/CD 파이프라인 구축
  4. 성능 모니터링 도입
  5. 사용자 분석 도구 통합

10. 프로젝트 메타데이터

  • 최초 커밋: e346f83 (프로젝트 최초 커밋)
  • 현재 브랜치: main
  • Git 상태: 다수의 수정 및 새 파일 존재
  • 문서화: PRD 문서 존재 (doc/supERPort ERP PRD.md)

이 문서는 2025-07-07 기준으로 작성되었습니다.