diff --git a/README.md b/README.md index acf4857..e8e6bc7 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ # NET ZERO-FitFit_FE +![alt text](image.png)
@@ -50,197 +51,195 @@
-## πŸ“‚ Project structure -``` ## πŸ“‚ Project structure ``` src -β”œβ”€β”€ api # API μš”μ²­ ν•¨μˆ˜ λͺ¨μŒ -β”‚Β Β  β”œβ”€β”€ authApi.js # 인증 κ΄€λ ¨ API (둜그인, νšŒμ›κ°€μž… λ“±) -β”‚Β Β  β”œβ”€β”€ chatApi.js # μ±„νŒ… κ΄€λ ¨ API (λ©”μ‹œμ§€ 전솑, 쑰회) -β”‚Β Β  β”œβ”€β”€ chatbotApi.js # 챗봇 κ΄€λ ¨ API -β”‚Β Β  β”œβ”€β”€ clothesApi.js # 의λ₯˜ κ΄€λ ¨ API (μƒν’ˆ 등둝, 쑰회) -β”‚Β Β  β”œβ”€β”€ common.js # 곡톡 API μ„€μ • 및 ν•¨μˆ˜ -β”‚Β Β  β”œβ”€β”€ fittingApi.js # 가상 ν”ΌνŒ… κ΄€λ ¨ API -β”‚Β Β  β”œβ”€β”€ memberApi.js # νšŒμ› 정보 κ΄€λ ¨ API -β”‚Β Β  β”œβ”€β”€ orderApi.js # μ£Όλ¬Έ 및 거래 λ‚΄μ—­ API -β”‚Β Β  β”œβ”€β”€ quizApi.js # ν€΄μ¦ˆ κ΄€λ ¨ API -β”‚Β Β  └── recommendationApi.js # μΆ”μ²œ μ‹œμŠ€ν…œ κ΄€λ ¨ API -β”œβ”€β”€ App.css # μ•± μ „μ—­ CSS 파일 -β”œβ”€β”€ App.jsx # μ•±μ˜ 메인 λΌμš°νŒ… 및 λ ˆμ΄μ•„μ›ƒ μ„€μ • μ»΄ν¬λ„ŒνŠΈ -β”œβ”€β”€ assets # 정적 λ¦¬μ†ŒμŠ€ (이미지, μ•„μ΄μ½˜ λ“±) -β”‚Β Β  β”œβ”€β”€ advertisement1.png # κ΄‘κ³  λ°°λ„ˆ 이미지 -β”‚Β Β  β”œβ”€β”€ bnkBank.png # 뢀산은행 μ•„μ΄μ½˜ -β”‚Β Β  β”œβ”€β”€ earth_quiz.png # ν€΄μ¦ˆ 지ꡬ 이미지 -β”‚Β Β  β”œβ”€β”€ earth.png # 지ꡬ μ•„μ΄μ½˜ -β”‚Β Β  β”œβ”€β”€ fitfit.png # 핏핏 둜고 이미지 -β”‚Β Β  β”œβ”€β”€ hanaBank.png # ν•˜λ‚˜μ€ν–‰ μ•„μ΄μ½˜ -β”‚Β Β  β”œβ”€β”€ ibkBank.png # 기업은행 μ•„μ΄μ½˜ -β”‚Β Β  β”œβ”€β”€ kakao_login_medium_wide.png # 카카였 둜그인 λ²„νŠΌ 이미지 -β”‚Β Β  β”œβ”€β”€ kakaoBank.png # μΉ΄μΉ΄μ˜€λ±…ν¬ μ•„μ΄μ½˜ -β”‚Β Β  β”œβ”€β”€ kBank.png # 케이뱅크 μ•„μ΄μ½˜ -β”‚Β Β  β”œβ”€β”€ kbBank.png # ꡭ민은행 μ•„μ΄μ½˜ -β”‚Β Β  β”œβ”€β”€ kebBank.png # ν•˜λ‚˜μ€ν–‰(ꡬ μ™Έν™˜) μ•„μ΄μ½˜ -β”‚Β Β  β”œβ”€β”€ kfccBank.png # μƒˆλ§ˆμ„κΈˆκ³  μ•„μ΄μ½˜ -β”‚Β Β  β”œβ”€β”€ logo-fitfit copy.png # 둜고 사본 -β”‚Β Β  β”œβ”€β”€ logo-fitfit.png # 메인 둜고 -β”‚Β Β  β”œβ”€β”€ nhBank.png # λ†ν˜‘μ€ν–‰ μ•„μ΄μ½˜ -β”‚Β Β  β”œβ”€β”€ postBank.png # 우체ꡭ μ•„μ΄μ½˜ -β”‚Β Β  β”œβ”€β”€ scBank.png # SCμ œμΌμ€ν–‰ μ•„μ΄μ½˜ -β”‚Β Β  β”œβ”€β”€ shinhanBank.png # μ‹ ν•œμ€ν–‰ μ•„μ΄μ½˜ -β”‚Β Β  β”œβ”€β”€ space.png # 우주 λ°°κ²½ 이미지 -β”‚Β Β  β”œβ”€β”€ suhyupBank.png # μˆ˜ν˜‘ μ•„μ΄μ½˜ -β”‚Β Β  β”œβ”€β”€ tossBank.png # ν† μŠ€λ±…ν¬ μ•„μ΄μ½˜ -β”‚Β Β  β”œβ”€β”€ userLocation.png # μ‚¬μš©μž μœ„μΉ˜ ν‘œμ‹œ μ•„μ΄μ½˜ -β”‚Β Β  └── wooriBank.png # μš°λ¦¬μ€ν–‰ μ•„μ΄μ½˜ -β”œβ”€β”€ components # κ³΅ν†΅μœΌλ‘œ μ‚¬μš©λ˜λŠ” UI μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”œβ”€β”€ BottomNavBar.jsx # ν•˜λ‹¨ λ„€λΉ„κ²Œμ΄μ…˜ λ°” (메인 메뉴 이동) -β”‚Β Β  └── PhotoPickerModal.jsx # 사진 선택 λͺ¨λ‹¬ (카메라/앨범) -β”œβ”€β”€ constants # μƒμˆ˜ 데이터 λͺ¨μŒ -β”‚Β Β  β”œβ”€β”€ categories.js # μƒν’ˆ μΉ΄ν…Œκ³ λ¦¬ μ •μ˜ -β”‚Β Β  └── termContent.js # μ•½κ΄€ λ‚΄μš© μ •μ˜ -β”œβ”€β”€ contexts # μ „μ—­ μƒνƒœ 관리 (Context API) -β”‚Β Β  β”œβ”€β”€ MapContext.jsx # 지도 κ΄€λ ¨ μƒνƒœ μ»¨ν…μŠ€νŠΈ -β”‚Β Β  β”œβ”€β”€ SellFormContext.jsx # νŒλ§€κΈ€ μž‘μ„± 폼 μƒνƒœ μ»¨ν…μŠ€νŠΈ -β”‚Β Β  └── SignupContext.jsx # νšŒμ›κ°€μž… μ§„ν–‰ μƒνƒœ μ»¨ν…μŠ€νŠΈ -β”œβ”€β”€ Hello.jsx # ν…ŒμŠ€νŠΈμš© Hello μ»΄ν¬λ„ŒνŠΈ -β”œβ”€β”€ hooks # μ»€μŠ€ν…€ ν›… λͺ¨μŒ -β”‚Β Β  └── useRequireAuth.js # 둜그인 μ—¬λΆ€ 확인 및 λ¦¬λ‹€μ΄λ ‰νŠΈ ν›… -β”œβ”€β”€ index.css # Tailwind CSS μ§„μž…μ  및 κΈ°λ³Έ μŠ€νƒ€μΌ -β”œβ”€β”€ main.jsx # React μ•± μ§„μž…μ  (DOM λ Œλ”λ§) -β”œβ”€β”€ pages # νŽ˜μ΄μ§€ λ‹¨μœ„ μ»΄ν¬λ„ŒνŠΈ 폴더 -β”‚Β Β  β”œβ”€β”€ auth # 인증 κ΄€λ ¨ νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ AuthStartPage.css # μ‹œμž‘ νŽ˜μ΄μ§€ μŠ€νƒ€μΌ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ AuthStartPage.jsx # μ‹œμž‘ νŽ˜μ΄μ§€ (둜그인/νšŒμ›κ°€μž… λΆ„κΈ°) -β”‚Β Β  β”‚Β Β  └── kakao # 카카였 둜그인 κ΄€λ ¨ -β”‚Β Β  β”‚Β Β  └── KakaoRedirect.jsx # 카카였 둜그인 콜백 처리 νŽ˜μ΄μ§€ -β”‚Β Β  β”œβ”€β”€ category # μΉ΄ν…Œκ³ λ¦¬ κ΄€λ ¨ νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ CategoryPage.jsx # μΉ΄ν…Œκ³ λ¦¬ λͺ©λ‘ νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ CategoryResultPage.jsx # μΉ΄ν…Œκ³ λ¦¬ 선택 κ²°κ³Ό 리슀트 νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  └── components # μΉ΄ν…Œκ³ λ¦¬ νŽ˜μ΄μ§€ λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ AccessoriesCategory.jsx # μ•‘μ„Έμ„œλ¦¬ μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ BagsCategory.jsx # κ°€λ°© μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ BottomsCategory.jsx # ν•˜μ˜ μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ CategoryClothesList.jsx # μΉ΄ν…Œκ³ λ¦¬ 의λ₯˜ λͺ©λ‘ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ DressesCategory.jsx # μ›ν”ΌμŠ€ μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ OuterwearCategory.jsx # μ•„μš°ν„° μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ RecommendedCategory.jsx # μΆ”μ²œ μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ShoesCategory.jsx # μ‹ λ°œ μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  └── TopsCategory.jsx # μƒμ˜ μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”œβ”€β”€ Chat # μ±„νŒ… κ΄€λ ¨ νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ChatPage.jsx # μ±„νŒ…λ°© λͺ©λ‘ νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  └── ChatRoomPage.jsx # κ°œλ³„ 1:1 μ±„νŒ…λ°© νŽ˜μ΄μ§€ -β”‚Β Β  β”œβ”€β”€ Closet # 옷μž₯ κ΄€λ ¨ νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ Closet.jsx # λ‚΄ 옷μž₯ 메인 νŽ˜μ΄μ§€ (λ“±λ‘λœ 옷 확인) -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ components # 옷μž₯ νŽ˜μ΄μ§€ λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”‚Β Β  └── ClosetTab.jsx # 옷μž₯ νƒ­ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  └── FittingRoomPage.jsx # 가상 ν”ΌνŒ…λ£Έ νŽ˜μ΄μ§€ (AI ν”ΌνŒ… μ‹€ν–‰) -β”‚Β Β  β”œβ”€β”€ LoadingPage.jsx # λ‘œλ”© ν™”λ©΄ νŽ˜μ΄μ§€ -β”‚Β Β  β”œβ”€β”€ MainPage # 메인화면 νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ components # 메인화면 λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ AdSection.jsx # κ΄‘κ³  μ„Ήμ…˜ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ MainNavBar.jsx # 메인 상단 λ„€λΉ„κ²Œμ΄μ…˜λ°” -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ NewTab.jsx # μ‹ μƒν’ˆ νƒ­ 컨텐츠 -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PopularRankingSection.jsx # 인기 λž­ν‚Ή μ„Ήμ…˜ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PopularTab.jsx # 인기 μƒν’ˆ νƒ­ 컨텐츠 -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProductCard.jsx # μƒν’ˆ μΉ΄λ“œ μ»΄ν¬λ„ŒνŠΈ (썸넀일, 가격 λ“±) -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ RecommendTab.jsx # μΆ”μ²œ μƒν’ˆ νƒ­ 컨텐츠 -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ SaleTab.jsx # 세일 μƒν’ˆ νƒ­ 컨텐츠 -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ SearchBar.jsx # 검색바 μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”‚Β Β  └── WelcomeModal.jsx # ν™˜μ˜ λͺ¨λ‹¬ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  └── MainPage.jsx # 메인 νŽ˜μ΄μ§€ μ§„μž…μ  -β”‚Β Β  β”œβ”€β”€ map # 지도 κ΄€λ ¨ νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ LocationSearchModal.jsx # μœ„μΉ˜ 검색 λͺ¨λ‹¬ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ MapPage.jsx # 지도 νŽ˜μ΄μ§€ (λ‚΄ μ£Όλ³€ μƒν’ˆ μ°ΎκΈ°) -β”‚Β Β  β”‚Β Β  └── useKakaoLoader.jsx # 카카였맡 λ‘œλ” ν›… -β”‚Β Β  β”œβ”€β”€ MyPage # λ§ˆμ΄νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ AccountManagePage.jsx # 계정 관리 νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ BodyInfoPage.jsx # μ²΄ν˜• 정보 관리 νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ChatbotPage.jsx # 챗봇 상담 νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ components # λ§ˆμ΄νŽ˜μ΄μ§€ λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ CleanTransactionModal.jsx # 클린 거래 μ•ˆλ‚΄ λͺ¨λ‹¬ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ HistoryPageLayout.jsx # λ‚΄μ—­ νŽ˜μ΄μ§€ λ ˆμ΄μ•„μ›ƒ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PurchaseHistoryList.jsx # ꡬ맀 λ‚΄μ—­ 리슀트 -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PurchaseHistoryTab.jsx # ꡬ맀 λ‚΄μ—­ νƒ­ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ReviewModal.jsx # 리뷰 μž‘μ„± λͺ¨λ‹¬ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ SalesHistoryList.jsx # 판맀 λ‚΄μ—­ 리슀트 -β”‚Β Β  β”‚Β Β  β”‚Β Β  └── SalesHistoryTab.jsx # 판맀 λ‚΄μ—­ νƒ­ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ LeafManagePage.jsx # 리프(포인트) 관리 νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ MyPage.jsx # λ§ˆμ΄νŽ˜μ΄μ§€ 메인 ν™”λ©΄ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProfileEditPage.jsx # ν”„λ‘œν•„ νŽΈμ§‘ νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PurchaseHistoryPage.jsx # ꡬ맀 λ‚΄μ—­ 전체 νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ QuizPage # ν€΄μ¦ˆ κ΄€λ ¨ νŽ˜μ΄μ§€ 폴더 -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ QuizPage.jsx # ν€΄μ¦ˆ 메인 νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”‚Β Β  └── QuizQuestionPage.jsx # ν€΄μ¦ˆ 문제 풀이 νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ SalesHistoryPage.jsx # 판맀 λ‚΄μ—­ 전체 νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ SellPage # μƒν’ˆ 판맀 등둝 폴더 -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ components # 판맀 νŽ˜μ΄μ§€ λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ BasicInfoSection.jsx # κΈ°λ³Έ 정보 μž…λ ₯ μ„Ήμ…˜ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ DatePickerModal.jsx # λ‚ μ§œ 선택 λͺ¨λ‹¬ +β”œβ”€β”€ api # API μš”μ²­ ν•¨μˆ˜ λͺ¨μŒ +β”‚Β Β  β”œβ”€β”€ authApi.js # 인증 κ΄€λ ¨ API (둜그인, νšŒμ›κ°€μž… λ“±) +β”‚Β Β  β”œβ”€β”€ chatApi.js # μ±„νŒ… κ΄€λ ¨ API (λ©”μ‹œμ§€ 전솑, 쑰회) +β”‚Β Β  β”œβ”€β”€ chatbotApi.js # 챗봇 κ΄€λ ¨ API +β”‚Β Β  β”œβ”€β”€ clothesApi.js # 의λ₯˜ κ΄€λ ¨ API (μƒν’ˆ 등둝, 쑰회) +β”‚Β Β  β”œβ”€β”€ common.js # 곡톡 API μ„€μ • 및 ν•¨μˆ˜ +β”‚Β Β  β”œβ”€β”€ fittingApi.js # 가상 ν”ΌνŒ… κ΄€λ ¨ API +β”‚Β Β  β”œβ”€β”€ memberApi.js # νšŒμ› 정보 κ΄€λ ¨ API +β”‚Β Β  β”œβ”€β”€ orderApi.js # μ£Όλ¬Έ 및 거래 λ‚΄μ—­ API +β”‚Β Β  β”œβ”€β”€ quizApi.js # ν€΄μ¦ˆ κ΄€λ ¨ API +β”‚Β Β  └── recommendationApi.js # μΆ”μ²œ μ‹œμŠ€ν…œ κ΄€λ ¨ API +β”œβ”€β”€ App.css # μ•± μ „μ—­ CSS 파일 +β”œβ”€β”€ App.jsx # μ•±μ˜ 메인 λΌμš°νŒ… 및 λ ˆμ΄μ•„μ›ƒ μ„€μ • μ»΄ν¬λ„ŒνŠΈ +β”œβ”€β”€ assets # 정적 λ¦¬μ†ŒμŠ€ (이미지, μ•„μ΄μ½˜ λ“±) +β”‚Β Β  β”œβ”€β”€ advertisement1.png # κ΄‘κ³  λ°°λ„ˆ 이미지 +β”‚Β Β  β”œβ”€β”€ bnkBank.png # 뢀산은행 μ•„μ΄μ½˜ +β”‚Β Β  β”œβ”€β”€ earth_quiz.png # ν€΄μ¦ˆ 지ꡬ 이미지 +β”‚Β Β  β”œβ”€β”€ earth.png # 지ꡬ μ•„μ΄μ½˜ +β”‚Β Β  β”œβ”€β”€ fitfit.png # 핏핏 둜고 이미지 +β”‚Β Β  β”œβ”€β”€ hanaBank.png # ν•˜λ‚˜μ€ν–‰ μ•„μ΄μ½˜ +β”‚Β Β  β”œβ”€β”€ ibkBank.png # 기업은행 μ•„μ΄μ½˜ +β”‚Β Β  β”œβ”€β”€ kakao_login_medium_wide.png # 카카였 둜그인 λ²„νŠΌ 이미지 +β”‚Β Β  β”œβ”€β”€ kakaoBank.png # μΉ΄μΉ΄μ˜€λ±…ν¬ μ•„μ΄μ½˜ +β”‚Β Β  β”œβ”€β”€ kBank.png # 케이뱅크 μ•„μ΄μ½˜ +β”‚Β Β  β”œβ”€β”€ kbBank.png # ꡭ민은행 μ•„μ΄μ½˜ +β”‚Β Β  β”œβ”€β”€ kebBank.png # ν•˜λ‚˜μ€ν–‰(ꡬ μ™Έν™˜) μ•„μ΄μ½˜ +β”‚Β Β  β”œβ”€β”€ kfccBank.png # μƒˆλ§ˆμ„κΈˆκ³  μ•„μ΄μ½˜ +β”‚Β Β  β”œβ”€β”€ logo-fitfit copy.png # 둜고 사본 +β”‚Β Β  β”œβ”€β”€ logo-fitfit.png # 메인 둜고 +β”‚Β Β  β”œβ”€β”€ nhBank.png # λ†ν˜‘μ€ν–‰ μ•„μ΄μ½˜ +β”‚Β Β  β”œβ”€β”€ postBank.png # 우체ꡭ μ•„μ΄μ½˜ +β”‚Β Β  β”œβ”€β”€ scBank.png # SCμ œμΌμ€ν–‰ μ•„μ΄μ½˜ +β”‚Β Β  β”œβ”€β”€ shinhanBank.png # μ‹ ν•œμ€ν–‰ μ•„μ΄μ½˜ +β”‚Β Β  β”œβ”€β”€ space.png # 우주 λ°°κ²½ 이미지 +β”‚Β Β  β”œβ”€β”€ suhyupBank.png # μˆ˜ν˜‘ μ•„μ΄μ½˜ +β”‚Β Β  β”œβ”€β”€ tossBank.png # ν† μŠ€λ±…ν¬ μ•„μ΄μ½˜ +β”‚Β Β  β”œβ”€β”€ userLocation.png # μ‚¬μš©μž μœ„μΉ˜ ν‘œμ‹œ μ•„μ΄μ½˜ +β”‚Β Β  └── wooriBank.png # μš°λ¦¬μ€ν–‰ μ•„μ΄μ½˜ +β”œβ”€β”€ components # κ³΅ν†΅μœΌλ‘œ μ‚¬μš©λ˜λŠ” UI μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”œβ”€β”€ BottomNavBar.jsx # ν•˜λ‹¨ λ„€λΉ„κ²Œμ΄μ…˜ λ°” (메인 메뉴 이동) +β”‚Β Β  └── PhotoPickerModal.jsx # 사진 선택 λͺ¨λ‹¬ (카메라/앨범) +β”œβ”€β”€ constants # μƒμˆ˜ 데이터 λͺ¨μŒ +β”‚Β Β  β”œβ”€β”€ categories.js # μƒν’ˆ μΉ΄ν…Œκ³ λ¦¬ μ •μ˜ +β”‚Β Β  └── termContent.js # μ•½κ΄€ λ‚΄μš© μ •μ˜ +β”œβ”€β”€ contexts # μ „μ—­ μƒνƒœ 관리 (Context API) +β”‚Β Β  β”œβ”€β”€ MapContext.jsx # 지도 κ΄€λ ¨ μƒνƒœ μ»¨ν…μŠ€νŠΈ +β”‚Β Β  β”œβ”€β”€ SellFormContext.jsx # νŒλ§€κΈ€ μž‘μ„± 폼 μƒνƒœ μ»¨ν…μŠ€νŠΈ +β”‚Β Β  └── SignupContext.jsx # νšŒμ›κ°€μž… μ§„ν–‰ μƒνƒœ μ»¨ν…μŠ€νŠΈ +β”œβ”€β”€ Hello.jsx # ν…ŒμŠ€νŠΈμš© Hello μ»΄ν¬λ„ŒνŠΈ +β”œβ”€β”€ hooks # μ»€μŠ€ν…€ ν›… λͺ¨μŒ +β”‚Β Β  └── useRequireAuth.js # 둜그인 μ—¬λΆ€ 확인 및 λ¦¬λ‹€μ΄λ ‰νŠΈ ν›… +β”œβ”€β”€ index.css # Tailwind CSS μ§„μž…μ  및 κΈ°λ³Έ μŠ€νƒ€μΌ +β”œβ”€β”€ main.jsx # React μ•± μ§„μž…μ  (DOM λ Œλ”λ§) +β”œβ”€β”€ pages # νŽ˜μ΄μ§€ λ‹¨μœ„ μ»΄ν¬λ„ŒνŠΈ 폴더 +β”‚Β Β  β”œβ”€β”€ auth # 인증 κ΄€λ ¨ νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ AuthStartPage.css # μ‹œμž‘ νŽ˜μ΄μ§€ μŠ€νƒ€μΌ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ AuthStartPage.jsx # μ‹œμž‘ νŽ˜μ΄μ§€ (둜그인/νšŒμ›κ°€μž… λΆ„κΈ°) +β”‚Β Β  β”‚Β Β  └── kakao # 카카였 둜그인 κ΄€λ ¨ +β”‚Β Β  β”‚Β Β  └── KakaoRedirect.jsx # 카카였 둜그인 콜백 처리 νŽ˜μ΄μ§€ +β”‚Β Β  β”œβ”€β”€ category # μΉ΄ν…Œκ³ λ¦¬ κ΄€λ ¨ νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ CategoryPage.jsx # μΉ΄ν…Œκ³ λ¦¬ λͺ©λ‘ νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ CategoryResultPage.jsx # μΉ΄ν…Œκ³ λ¦¬ 선택 κ²°κ³Ό 리슀트 νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  └── components # μΉ΄ν…Œκ³ λ¦¬ νŽ˜μ΄μ§€ λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ AccessoriesCategory.jsx # μ•‘μ„Έμ„œλ¦¬ μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ BagsCategory.jsx # κ°€λ°© μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ BottomsCategory.jsx # ν•˜μ˜ μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ CategoryClothesList.jsx # μΉ΄ν…Œκ³ λ¦¬ 의λ₯˜ λͺ©λ‘ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ DressesCategory.jsx # μ›ν”ΌμŠ€ μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ OuterwearCategory.jsx # μ•„μš°ν„° μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ RecommendedCategory.jsx # μΆ”μ²œ μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ShoesCategory.jsx # μ‹ λ°œ μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  └── TopsCategory.jsx # μƒμ˜ μΉ΄ν…Œκ³ λ¦¬ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”œβ”€β”€ Chat # μ±„νŒ… κ΄€λ ¨ νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ChatPage.jsx # μ±„νŒ…λ°© λͺ©λ‘ νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  └── ChatRoomPage.jsx # κ°œλ³„ 1:1 μ±„νŒ…λ°© νŽ˜μ΄μ§€ +β”‚Β Β  β”œβ”€β”€ Closet # 옷μž₯ κ΄€λ ¨ νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ Closet.jsx # λ‚΄ 옷μž₯ 메인 νŽ˜μ΄μ§€ (λ“±λ‘λœ 옷 확인) +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ components # 옷μž₯ νŽ˜μ΄μ§€ λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”‚Β Β  └── ClosetTab.jsx # 옷μž₯ νƒ­ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  └── FittingRoomPage.jsx # 가상 ν”ΌνŒ…λ£Έ νŽ˜μ΄μ§€ (AI ν”ΌνŒ… μ‹€ν–‰) +β”‚Β Β  β”œβ”€β”€ LoadingPage.jsx # λ‘œλ”© ν™”λ©΄ νŽ˜μ΄μ§€ +β”‚Β Β  β”œβ”€β”€ MainPage # 메인화면 νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ components # 메인화면 λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ AdSection.jsx # κ΄‘κ³  μ„Ήμ…˜ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ MainNavBar.jsx # 메인 상단 λ„€λΉ„κ²Œμ΄μ…˜λ°” +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ NewTab.jsx # μ‹ μƒν’ˆ νƒ­ 컨텐츠 +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PopularRankingSection.jsx # 인기 λž­ν‚Ή μ„Ήμ…˜ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PopularTab.jsx # 인기 μƒν’ˆ νƒ­ 컨텐츠 +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProductCard.jsx # μƒν’ˆ μΉ΄λ“œ μ»΄ν¬λ„ŒνŠΈ (썸넀일, 가격 λ“±) +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ RecommendTab.jsx # μΆ”μ²œ μƒν’ˆ νƒ­ 컨텐츠 +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ SaleTab.jsx # 세일 μƒν’ˆ νƒ­ 컨텐츠 +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ SearchBar.jsx # 검색바 μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”‚Β Β  └── WelcomeModal.jsx # ν™˜μ˜ λͺ¨λ‹¬ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  └── MainPage.jsx # 메인 νŽ˜μ΄μ§€ μ§„μž…μ  +β”‚Β Β  β”œβ”€β”€ map # 지도 κ΄€λ ¨ νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ LocationSearchModal.jsx # μœ„μΉ˜ 검색 λͺ¨λ‹¬ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ MapPage.jsx # 지도 νŽ˜μ΄μ§€ (λ‚΄ μ£Όλ³€ μƒν’ˆ μ°ΎκΈ°) +β”‚Β Β  β”‚Β Β  └── useKakaoLoader.jsx # 카카였맡 λ‘œλ” ν›… +β”‚Β Β  β”œβ”€β”€ MyPage # λ§ˆμ΄νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ AccountManagePage.jsx # 계정 관리 νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ BodyInfoPage.jsx # μ²΄ν˜• 정보 관리 νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ChatbotPage.jsx # 챗봇 상담 νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ components # λ§ˆμ΄νŽ˜μ΄μ§€ λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ CleanTransactionModal.jsx # 클린 거래 μ•ˆλ‚΄ λͺ¨λ‹¬ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ HistoryPageLayout.jsx # λ‚΄μ—­ νŽ˜μ΄μ§€ λ ˆμ΄μ•„μ›ƒ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PurchaseHistoryList.jsx # ꡬ맀 λ‚΄μ—­ 리슀트 +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PurchaseHistoryTab.jsx # ꡬ맀 λ‚΄μ—­ νƒ­ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ReviewModal.jsx # 리뷰 μž‘μ„± λͺ¨λ‹¬ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ SalesHistoryList.jsx # 판맀 λ‚΄μ—­ 리슀트 +β”‚Β Β  β”‚Β Β  β”‚Β Β  └── SalesHistoryTab.jsx # 판맀 λ‚΄μ—­ νƒ­ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ LeafManagePage.jsx # 리프(포인트) 관리 νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ MyPage.jsx # λ§ˆμ΄νŽ˜μ΄μ§€ 메인 ν™”λ©΄ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProfileEditPage.jsx # ν”„λ‘œν•„ νŽΈμ§‘ νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PurchaseHistoryPage.jsx # ꡬ맀 λ‚΄μ—­ 전체 νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ QuizPage # ν€΄μ¦ˆ κ΄€λ ¨ νŽ˜μ΄μ§€ 폴더 +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ QuizPage.jsx # ν€΄μ¦ˆ 메인 νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”‚Β Β  └── QuizQuestionPage.jsx # ν€΄μ¦ˆ 문제 풀이 νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ SalesHistoryPage.jsx # 판맀 λ‚΄μ—­ 전체 νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ SellPage # μƒν’ˆ 판맀 등둝 폴더 +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ components # 판맀 νŽ˜μ΄μ§€ λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ BasicInfoSection.jsx # κΈ°λ³Έ 정보 μž…λ ₯ μ„Ήμ…˜ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ DatePickerModal.jsx # λ‚ μ§œ 선택 λͺ¨λ‹¬ β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ DirectTransactionSection.jsx # 직거래 μ„€μ • μ„Ήμ…˜ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PhotoUploadSection.jsx # 사진 μ—…λ‘œλ“œ μ„Ήμ…˜ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PriceSection.jsx # 가격 μ„€μ • μ„Ήμ…˜ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ SizeSection.jsx # μ‚¬μ΄μ¦ˆ μ„€μ • μ„Ήμ…˜ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ SpecialSaleSection.jsx # νŠΉκ°€ μ„€μ • μ„Ήμ…˜ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ StyleSection.jsx # μŠ€νƒ€μΌ νƒœκ·Έ μ„€μ • μ„Ήμ…˜ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  └── VirtualFittingSection.jsx # κ°€μƒν”ΌνŒ… ν—ˆμš© μ„€μ • -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ EditSellPage.jsx # νŒλ§€κΈ€ μˆ˜μ • νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”‚Β Β  └── SellPage.jsx # νŒλ§€κΈ€ 등둝 νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  └── WithdrawalPage.jsx # νšŒμ› νƒˆν‡΄ νŽ˜μ΄μ§€ -β”‚Β Β  β”œβ”€β”€ Payment # 결제 κ΄€λ ¨ νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  └── PaymentPage.jsx # 결제 μ§„ν–‰ νŽ˜μ΄μ§€ -β”‚Β Β  β”œβ”€β”€ ProductDetailPage # μƒν’ˆ 상세 νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ components # 상세 νŽ˜μ΄μ§€ λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProductActionButtons.jsx # ꡬ맀/μ±„νŒ… λ²„νŠΌ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProductDescription.jsx # μƒν’ˆ 상세 μ„€λͺ… -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProductDetailHeader.jsx # 상세 νŽ˜μ΄μ§€ 헀더 -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProductImageCarousel.jsx # μƒν’ˆ 이미지 μŠ¬λΌμ΄λ” -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProductInfoSection.jsx # μƒν’ˆ 정보 μ„Ήμ…˜ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProductSizeSection.jsx # μ‹€μΈ‘ μ‚¬μ΄μ¦ˆ μ„Ήμ…˜ -β”‚Β Β  β”‚Β Β  β”‚Β Β  └── SellerInfoBox.jsx # 판맀자 정보 λ°•μŠ€ -β”‚Β Β  β”‚Β Β  └── ProductDetailPage.jsx # μƒν’ˆ 상세 νŽ˜μ΄μ§€ 메인 -β”‚Β Β  β”œβ”€β”€ SearchPage # 검색 κ΄€λ ¨ νŽ˜μ΄μ§€ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ components # 검색 νŽ˜μ΄μ§€ λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PriceFilterDropdown.jsx # 가격 ν•„ν„° -β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ RegionFilterDropdown.jsx # μ§€μ—­ ν•„ν„° -β”‚Β Β  β”‚Β Β  β”‚Β Β  └── StyleFilterDropdown.jsx # μŠ€νƒ€μΌ ν•„ν„° -β”‚Β Β  β”‚Β Β  └── SearchPage.jsx # 검색 κ²°κ³Ό νŽ˜μ΄μ§€ -β”‚Β Β  └── signup # νšŒμ›κ°€μž… κ΄€λ ¨ νŽ˜μ΄μ§€ -β”‚Β Β  β”œβ”€β”€ components # νšŒμ›κ°€μž… λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ BirthDateSelector.css # 생년월일 선택 μŠ€νƒ€μΌ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ BirthDateSelector.jsx # 생년월일 선택 μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ GenderSelector.css # 성별 선택 μŠ€νƒ€μΌ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ GenderSelector.jsx # 성별 선택 μ»΄ν¬λ„ŒνŠΈ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ InputWithCheckButton.css # 쀑볡확인 λ²„νŠΌ 포함 μž…λ ₯μ°½ μŠ€νƒ€μΌ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ InputWithCheckButton.jsx # 쀑볡확인 λ²„νŠΌ 포함 μž…λ ₯μ°½ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ LabeledInput.css # 라벨 포함 μž…λ ₯μ°½ μŠ€νƒ€μΌ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ LabeledInput.jsx # 라벨 포함 μž…λ ₯μ°½ -β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PasswordFields.css # λΉ„λ°€λ²ˆν˜Έ μž…λ ₯ ν•„λ“œ μŠ€νƒ€μΌ -β”‚Β Β  β”‚Β Β  └── PasswordFields.jsx # λΉ„λ°€λ²ˆν˜Έ μž…λ ₯ ν•„λ“œ -β”‚Β Β  β”œβ”€β”€ SignupPage.jsx # νšŒμ›κ°€μž… 메인 νŽ˜μ΄μ§€ -β”‚Β Β  β”œβ”€β”€ SignupStep1.css # 단계1 μŠ€νƒ€μΌ -β”‚Β Β  β”œβ”€β”€ SignupStep1.jsx # 단계1 (μ•½κ΄€λ™μ˜) -β”‚Β Β  β”œβ”€β”€ SignupStep2.css # 단계2 μŠ€νƒ€μΌ -β”‚Β Β  β”œβ”€β”€ SignupStep2.jsx # 단계2 (μ •λ³΄μž…λ ₯) -β”‚Β Β  β”œβ”€β”€ SignupStep3.css # 단계3 μŠ€νƒ€μΌ -β”‚Β Β  β”œβ”€β”€ SignupStep3.jsx # 단계3 (μ™„λ£Œ) -β”‚Β Β  β”œβ”€β”€ styles # νšŒμ›κ°€μž… 곡톡 μŠ€νƒ€μΌ -β”‚Β Β  β”‚Β Β  └── common.css # 곡톡 CSS -β”‚Β Β  β”œβ”€β”€ TermsDetailPage.css # μ•½κ΄€ 상세 μŠ€νƒ€μΌ -β”‚Β Β  β”œβ”€β”€ TermsDetailPage.jsx # μ•½κ΄€ 상세 λ‚΄μš© νŽ˜μ΄μ§€ -β”‚Β Β  β”œβ”€β”€ TermsPage.css # μ•½κ΄€ λͺ©λ‘ μŠ€νƒ€μΌ -β”‚Β Β  └── TermsPage.jsx # μ•½κ΄€ λͺ©λ‘ νŽ˜μ΄μ§€ -β”œβ”€β”€ reducers # Redux Reducer λͺ¨μŒ -β”‚Β Β  β”œβ”€β”€ auth.js # 인증 κ΄€λ ¨ λ¦¬λ“€μ„œ -β”‚Β Β  β”œβ”€β”€ counter.js # μΉ΄μš΄ν„° λ¦¬λ“€μ„œ (예제용) -β”‚Β Β  └── index.js # 루트 λ¦¬λ“€μ„œ κ²°ν•© -β”œβ”€β”€ store.js # Redux Store μ„€μ • 파일 -β”œβ”€β”€ styles # μŠ€νƒ€μΌ κ΄€λ ¨ 폴더 -β”‚Β Β  └── global.css # μ „μ—­ CSS 파일 -└── utils # μœ ν‹Έλ¦¬ν‹° ν•¨μˆ˜ 폴더 - β”œβ”€β”€ formatters.js # λ‚ μ§œ/κΈˆμ•‘ ν¬λ§·νŒ… ν•¨μˆ˜ - β”œβ”€β”€ imageCompression.js # 이미지 μ••μΆ• μœ ν‹Έλ¦¬ν‹° - └── imageUtils.js # 이미지 처리 κ΄€λ ¨ ν•¨μˆ˜ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PhotoUploadSection.jsx # 사진 μ—…λ‘œλ“œ μ„Ήμ…˜ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PriceSection.jsx # 가격 μ„€μ • μ„Ήμ…˜ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ SizeSection.jsx # μ‚¬μ΄μ¦ˆ μ„€μ • μ„Ήμ…˜ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ SpecialSaleSection.jsx # νŠΉκ°€ μ„€μ • μ„Ήμ…˜ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ StyleSection.jsx # μŠ€νƒ€μΌ νƒœκ·Έ μ„€μ • μ„Ήμ…˜ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”‚Β Β  └── VirtualFittingSection.jsx # κ°€μƒν”ΌνŒ… ν—ˆμš© μ„€μ • +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ EditSellPage.jsx # νŒλ§€κΈ€ μˆ˜μ • νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”‚Β Β  └── SellPage.jsx # νŒλ§€κΈ€ 등둝 νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  └── WithdrawalPage.jsx # νšŒμ› νƒˆν‡΄ νŽ˜μ΄μ§€ +β”‚Β Β  β”œβ”€β”€ Payment # 결제 κ΄€λ ¨ νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  └── PaymentPage.jsx # 결제 μ§„ν–‰ νŽ˜μ΄μ§€ +β”‚Β Β  β”œβ”€β”€ ProductDetailPage # μƒν’ˆ 상세 νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ components # 상세 νŽ˜μ΄μ§€ λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProductActionButtons.jsx # ꡬ맀/μ±„νŒ… λ²„νŠΌ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProductDescription.jsx # μƒν’ˆ 상세 μ„€λͺ… +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProductDetailHeader.jsx # 상세 νŽ˜μ΄μ§€ 헀더 +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProductImageCarousel.jsx # μƒν’ˆ 이미지 μŠ¬λΌμ΄λ” +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProductInfoSection.jsx # μƒν’ˆ 정보 μ„Ήμ…˜ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ ProductSizeSection.jsx # μ‹€μΈ‘ μ‚¬μ΄μ¦ˆ μ„Ήμ…˜ +β”‚Β Β  β”‚Β Β  β”‚Β Β  └── SellerInfoBox.jsx # 판맀자 정보 λ°•μŠ€ +β”‚Β Β  β”‚Β Β  └── ProductDetailPage.jsx # μƒν’ˆ 상세 νŽ˜μ΄μ§€ 메인 +β”‚Β Β  β”œβ”€β”€ SearchPage # 검색 κ΄€λ ¨ νŽ˜μ΄μ§€ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ components # 검색 νŽ˜μ΄μ§€ λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PriceFilterDropdown.jsx # 가격 ν•„ν„° +β”‚Β Β  β”‚Β Β  β”‚Β Β  β”œβ”€β”€ RegionFilterDropdown.jsx # μ§€μ—­ ν•„ν„° +β”‚Β Β  β”‚Β Β  β”‚Β Β  └── StyleFilterDropdown.jsx # μŠ€νƒ€μΌ ν•„ν„° +β”‚Β Β  β”‚Β Β  └── SearchPage.jsx # 검색 κ²°κ³Ό νŽ˜μ΄μ§€ +β”‚Β Β  └── signup # νšŒμ›κ°€μž… κ΄€λ ¨ νŽ˜μ΄μ§€ +β”‚Β Β  β”œβ”€β”€ components # νšŒμ›κ°€μž… λ‚΄λΆ€ μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ BirthDateSelector.css # 생년월일 선택 μŠ€νƒ€μΌ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ BirthDateSelector.jsx # 생년월일 선택 μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ GenderSelector.css # 성별 선택 μŠ€νƒ€μΌ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ GenderSelector.jsx # 성별 선택 μ»΄ν¬λ„ŒνŠΈ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ InputWithCheckButton.css # 쀑볡확인 λ²„νŠΌ 포함 μž…λ ₯μ°½ μŠ€νƒ€μΌ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ InputWithCheckButton.jsx # 쀑볡확인 λ²„νŠΌ 포함 μž…λ ₯μ°½ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ LabeledInput.css # 라벨 포함 μž…λ ₯μ°½ μŠ€νƒ€μΌ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ LabeledInput.jsx # 라벨 포함 μž…λ ₯μ°½ +β”‚Β Β  β”‚Β Β  β”œβ”€β”€ PasswordFields.css # λΉ„λ°€λ²ˆν˜Έ μž…λ ₯ ν•„λ“œ μŠ€νƒ€μΌ +β”‚Β Β  β”‚Β Β  └── PasswordFields.jsx # λΉ„λ°€λ²ˆν˜Έ μž…λ ₯ ν•„λ“œ +β”‚Β Β  β”œβ”€β”€ SignupPage.jsx # νšŒμ›κ°€μž… 메인 νŽ˜μ΄μ§€ +β”‚Β Β  β”œβ”€β”€ SignupStep1.css # 단계1 μŠ€νƒ€μΌ +β”‚Β Β  β”œβ”€β”€ SignupStep1.jsx # 단계1 (μ•½κ΄€λ™μ˜) +β”‚Β Β  β”œβ”€β”€ SignupStep2.css # 단계2 μŠ€νƒ€μΌ +β”‚Β Β  β”œβ”€β”€ SignupStep2.jsx # 단계2 (μ •λ³΄μž…λ ₯) +β”‚Β Β  β”œβ”€β”€ SignupStep3.css # 단계3 μŠ€νƒ€μΌ +β”‚Β Β  β”œβ”€β”€ SignupStep3.jsx # 단계3 (μ™„λ£Œ) +β”‚Β Β  β”œβ”€β”€ styles # νšŒμ›κ°€μž… 곡톡 μŠ€νƒ€μΌ +β”‚Β Β  β”‚Β Β  └── common.css # 곡톡 CSS +β”‚Β Β  β”œβ”€β”€ TermsDetailPage.css # μ•½κ΄€ 상세 μŠ€νƒ€μΌ +β”‚Β Β  β”œβ”€β”€ TermsDetailPage.jsx # μ•½κ΄€ 상세 λ‚΄μš© νŽ˜μ΄μ§€ +β”‚Β Β  β”œβ”€β”€ TermsPage.css # μ•½κ΄€ λͺ©λ‘ μŠ€νƒ€μΌ +β”‚Β Β  └── TermsPage.jsx # μ•½κ΄€ λͺ©λ‘ νŽ˜μ΄μ§€ +β”œβ”€β”€ reducers # Redux Reducer λͺ¨μŒ +β”‚Β Β  β”œβ”€β”€ auth.js # 인증 κ΄€λ ¨ λ¦¬λ“€μ„œ +β”‚Β Β  β”œβ”€β”€ counter.js # μΉ΄μš΄ν„° λ¦¬λ“€μ„œ (예제용) +β”‚Β Β  └── index.js # 루트 λ¦¬λ“€μ„œ κ²°ν•© +β”œβ”€β”€ store.js # Redux Store μ„€μ • 파일 +β”œβ”€β”€ styles # μŠ€νƒ€μΌ κ΄€λ ¨ 폴더 +β”‚Β Β  └── global.css # μ „μ—­ CSS 파일 +└── utils # μœ ν‹Έλ¦¬ν‹° ν•¨μˆ˜ 폴더 + β”œβ”€β”€ formatters.js # λ‚ μ§œ/κΈˆμ•‘ ν¬λ§·νŒ… ν•¨μˆ˜ + β”œβ”€β”€ imageCompression.js # 이미지 μ••μΆ• μœ ν‹Έλ¦¬ν‹° + └── imageUtils.js # 이미지 처리 κ΄€λ ¨ ν•¨μˆ˜ ```