2024.07.15 ~ 2024.08.21(수)
박채수 | 이가현 | 최혜미 | 양이준 | 이종훈 | 이혜원 |
---|---|---|---|---|---|
@Chasyuss | @Ga-zzang | @MiMing-00 | @ejunyang | @jonghoon7431 | [email protected] |
FE | FE | FE | FE | FE | DS |
🔗 향그리움
- Kakao와 Google 계정을 통한 간편 소셜로그인이 가능합니다.
- 회원가입은 퍼널 형식으로 사용자의 편의성 증가
- 회원 탈퇴시 서비스에서 탈퇴처리 됩니다.
- 비회원으로 둘러보기 기능이 있어, 회원가입 전에 사이트에 대해 둘러보실 수 있습니다.
- 해당 시장의 위치를 지도를 통해 확인하실 수 있습니다.
- 해당 시장의 이미지를 제공합니다.
- 해당 시장의 편의 시설 여부를 제공합니다.
- 추천시장: 주변의 추천 시장을 제공합니다.
- CRUD: 댓글 작성/수정/삭제/조회 기능을 제공합니다.
- 특산물을 둘러보며 리뷰 작성이 가능합니다.
- 원하는 수량을 선택해 구매가 가능합니다.
- 보고 싶은 시장을 검색할 수 있는 검색 기능을 제공합니다.
- 이스터에그가 존재합니다.
- 향그리움이 추천하는 전통시장을 보실 수 있습니다.
- 마이페이지에서 내가 좋아요 한 시장, 내가 최근에 본 시장을 확인 할 수 있습니다.
- 유저의 프로필 사진과 닉네임을 수정할 수 있습니다.
- 마이페이지 내에서의 좋아요 취소가 가능합니다.
- 최근에 본 시장은 최대 3개까지만 나타납니다.
- 실시간 채팅이 가능합니다.
- 각각의 채팅방이 나눠져 있어, 원하는 채팅방으로 들어갈 수 있습니다.
- 악성 사용자의 채팅 대화 내용은 신고할 수 있습니다.
- 모든 채팅은 하루만 보여집니다.
- 결제가 가능합니다.
- 마이페이지에서 주문 내역을 확인하고, 구매한 특산물에 대한 리뷰 작성/수정/삭제 가능합니다.
- 장바구니에 보관된 특산물의 구매 수량 변경이 가능합니다.
- 상품 전체 삭제 / 선택 삭제 기능을 제공합니다.
📦src
┣ 📂app
┃ ┣ 📂(provider)
┃ ┃ ┗ 📂(root)
┃ ┃ ┃ ┣ 📂(home)
┃ ┃ ┃ ┃ ┣ 📂_components
┃ ┃ ┃ ┃ ┃ ┣ 📜FoodBox.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜LikeButton.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜LoadingSkeleton.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜SectionBanner.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜SectionFood.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜SectionMarket.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜SectionVideo.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜SlideBanner.tsx
┃ ┃ ┃ ┃ ┃ ┗ 📜WideFoodBox.tsx
┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┃ ┃ ┣ 📂admin
┃ ┃ ┃ ┃ ┗ 📂[secret]
┃ ┃ ┃ ┃ ┃ ┣ 📂_components
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜AdminChatReport.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜AdminPayHistory.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┗ 📜AdminReportChatHistory.tsx
┃ ┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┃ ┃ ┣ 📂cart
┃ ┃ ┃ ┃ ┣ 📂_components
┃ ┃ ┃ ┃ ┃ ┣ 📂data-table
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜CountButton.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜Data-table-column-header.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜DataTable.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┗ 📜DeleteButton.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜CartFixedButtons.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜CartList.tsx
┃ ┃ ┃ ┃ ┃ ┗ 📜CartPriceList.tsx
┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┃ ┃ ┣ 📂check-payment
┃ ┃ ┃ ┃ ┣ 📂_components
┃ ┃ ┃ ┃ ┃ ┗ 📜CheckPaymentContent.tsx
┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┃ ┃ ┣ 📂complete-payment
┃ ┃ ┃ ┃ ┣ 📂_components
┃ ┃ ┃ ┃ ┃ ┗ 📜CompletePaymentContent.tsx
┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┃ ┃ ┣ 📂local-food
┃ ┃ ┃ ┃ ┣ 📂[id]
┃ ┃ ┃ ┃ ┃ ┣ 📂_components
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📂web
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜ProductDetail.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┗ 📜ProductSlide.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜CartModal.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜CountButton.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜DeliveryInfo.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜DetailImage.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜DetailSlide.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜DiscountAmount.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜LocalDetailView.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜OrderDetail.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜Review.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜StarRating.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┗ 📜TotalPriceList.tsx
┃ ┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┃ ┃ ┃ ┣ 📂_components
┃ ┃ ┃ ┃ ┃ ┣ 📜AddCartButton.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜FixedButtons.tsx
┃ ┃ ┃ ┃ ┃ ┗ 📜LocalFoodView.tsx
┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┃ ┃ ┣ 📂log-in
┃ ┃ ┃ ┃ ┣ 📂_components
┃ ┃ ┃ ┃ ┃ ┣ 📜DesktopLayout.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜GoogleLogin.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜KaKaoLogin.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜LoginForm.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜LoginHeader.tsx
┃ ┃ ┃ ┃ ┃ ┗ 📜NoLogin.tsx
┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┃ ┃ ┣ 📂market
┃ ┃ ┃ ┃ ┣ 📂[id]
┃ ┃ ┃ ┃ ┃ ┣ 📂_components
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜MarketComments.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┣ 📜MarketRecommend.tsx
┃ ┃ ┃ ┃ ┃ ┃ ┗ 📜ScrollButton.tsx
┃ ┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┃ ┃ ┃ ┣ 📂_components
┃ ┃ ┃ ┃ ┃ ┣ 📜KaKaoMap.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜MarketImage.tsx
┃ ┃ ┃ ┃ ┃ ┗ 📜MarketLikes.tsx
┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┃ ┃ ┣ 📂my-page
┃ ┃ ┃ ┃ ┣ 📂_components
┃ ┃ ┃ ┃ ┃ ┣ 📜CancelUser.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜Coupon_mypage.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜LikeMarket.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜Logout.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜OrderList_mypage.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜Profile.tsx
┃ ┃ ┃ ┃ ┃ ┗ 📜RecentMarket.tsx
┃ ┃ ┃ ┃ ┣ 📂coupon-page
┃ ┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┃ ┃ ┃ ┣ 📂likemarket-page
┃ ┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┃ ┃ ┃ ┣ 📜layout.tsx
┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┃ ┃ ┣ 📂payment
┃ ┃ ┃ ┃ ┣ 📂_components
┃ ┃ ┃ ┃ ┃ ┣ 📜NoPayHistory.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜PayHistoryList.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜ReviewForm.tsx
┃ ┃ ┃ ┃ ┃ ┗ 📜ReviewProductDetail.tsx
┃ ┃ ┃ ┃ ┣ 📜layout.tsx
┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┃ ┃ ┣ 📂profile-edit
┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┃ ┃ ┗ 📂sign-up
┃ ┃ ┃ ┃ ┣ 📂_components
┃ ┃ ┃ ┃ ┃ ┣ 📜DesktopSignUpLayout.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜SignUpContainer.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜SignUpForm.tsx
┃ ┃ ┃ ┃ ┃ ┣ 📜Step.tsx
┃ ┃ ┃ ┃ ┃ ┗ 📜Stepper.tsx
┃ ┃ ┃ ┃ ┗ 📜page.tsx
┃ ┣ 📂api
┃ ┃ ┣ 📂auth
┃ ┃ ┃ ┣ 📂callback
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂check-duplicate
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂log-in
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂log-out
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂sign-up
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂social-login
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂user
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂user-delete
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂user-image
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┗ 📂user-update
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┣ 📂chat
┃ ┃ ┃ ┣ 📂admin
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂chat-list
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂chat-read
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┗ 📂chat-send
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┣ 📂localfood
┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┣ 📂market
┃ ┃ ┃ ┣ 📂comment
┃ ┃ ┃ ┃ ┗ 📂[marketId]
┃ ┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂filter-list
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂liked-markets
┃ ┃ ┃ ┃ ┗ 📂[userId]
┃ ┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂likes
┃ ┃ ┃ ┃ ┗ 📂[userId]
┃ ┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂list
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂map
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂marketDetail
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂marketDetailList
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂marketImage
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂marketMain
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂recent-markets
┃ ┃ ┃ ┃ ┗ 📂[userId]
┃ ┃ ┃ ┗ 📂recommend
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┣ 📂payment
┃ ┃ ┃ ┣ 📂admin
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂pay-supabase
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┣ 📂transaction
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┃ ┗ 📂webhook
┃ ┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┣ 📂review
┃ ┃ ┃ ┗ 📜route.ts
┃ ┃ ┗ 📂search
┃ ┃ ┃ ┣ 📂home
┃ ┃ ┃ ┃ ┗ 📜route.tsx
┃ ┃ ┃ ┗ 📜route.tsx
┃ ┣ 📜Providers.tsx
┃ ┣ 📜globals.css
┃ ┣ 📜layout.tsx
┃ ┗ 📜template.tsx
┣ 📂components
┃ ┣ 📂chat
┃ ┃ ┣ 📂_component
┃ ┃ ┃ ┣ 📜ChatList.tsx
┃ ┃ ┃ ┣ 📜ReportAlert.tsx
┃ ┃ ┃ ┣ 📜SendChat.tsx
┃ ┃ ┃ ┗ 📜WarningChat.tsx
┃ ┃ ┗ 📜Chat.tsx
┃ ┣ 📂common
┃ ┃ ┣ 📂header
┃ ┃ ┃ ┣ 📂_component
┃ ┃ ┃ ┃ ┣ 📜HomeSearchResult.tsx
┃ ┃ ┃ ┃ ┣ 📜LocalFoodSearchResults.tsx
┃ ┃ ┃ ┃ ┣ 📜MarketSearchResult.tsx
┃ ┃ ┃ ┃ ┣ 📜SearchBar.tsx
┃ ┃ ┃ ┃ ┣ 📜SearchRecommendations.tsx
┃ ┃ ┃ ┃ ┣ 📜ShowBackLogo.tsx
┃ ┃ ┃ ┃ ┗ 📜ShowSearchCart.tsx
┃ ┃ ┃ ┣ 📜AppHeader.tsx
┃ ┃ ┃ ┗ 📜WebHeader.tsx
┃ ┃ ┣ 📜Alert.tsx
┃ ┃ ┣ 📜DefaultAppLayout.tsx
┃ ┃ ┣ 📜DefaultImage.tsx
┃ ┃ ┣ 📜DefaultWebLayout.tsx
┃ ┃ ┣ 📜FirstLoading.tsx
┃ ┃ ┣ 📜Footer.tsx
┃ ┃ ┣ 📜Loading.tsx
┃ ┃ ┣ 📜Navigation.tsx
┃ ┃ ┣ 📜PayButton.tsx
┃ ┃ ┗ 📜SearchAlert.tsx
┃ ┣ 📂icons
┃ ┃ ┣ 📜ChatIcon.tsx
┃ ┃ ┣ 📜ChatSendIcon.tsx
┃ ┃ ┣ 📜KNostalgiaIcon2.tsx
┃ ┃ ┣ 📜KNostalgiaIcon3.tsx
┃ ┃ ┣ 📜TitleLogo.tsx
┃ ┃ ┗ 📜TopButton.tsx
┃ ┗ 📂ui
┃ ┃ ┣ 📜FilterButton.tsx
┃ ┃ ┣ 📜alert-dialog.tsx
┃ ┃ ┣ 📜alert.tsx
┃ ┃ ┣ 📜button.tsx
┃ ┃ ┣ 📜card.tsx
┃ ┃ ┣ 📜carousel.tsx
┃ ┃ ┣ 📜checkbox.tsx
┃ ┃ ┣ 📜dialog.tsx
┃ ┃ ┣ 📜dropdown-menu.tsx
┃ ┃ ┣ 📜input.tsx
┃ ┃ ┣ 📜label.tsx
┃ ┃ ┣ 📜pagination.tsx
┃ ┃ ┣ 📜sheet.tsx
┃ ┃ ┣ 📜skeleton.tsx
┃ ┃ ┣ 📜table.tsx
┃ ┃ ┣ 📜toast.tsx
┃ ┃ ┣ 📜toaster.tsx
┃ ┃ ┗ 📜use-toast.ts
┣ 📂fonts
┃ ┣ 📜PretendardVariable.woff2
┃ ┗ 📜YeojuCeramic.ttf
┣ 📂hooks
┃ ┣ 📂cart
┃ ┃ ┗ 📜useUserCartData.ts
┃ ┣ 📂localFood
┃ ┃ ┣ 📜useDeleteProduct.ts
┃ ┃ ┗ 📜useGetProduct.ts
┃ ┣ 📂market
┃ ┣ 📂payment
┃ ┃ ┣ 📜canclePayWithDbUpdate.tsx
┃ ┃ ┣ 📜getProductImage.ts
┃ ┃ ┣ 📜useDeletePayHistory.tsx
┃ ┃ ┗ 📜useGetPaymentHistory.tsx
┃ ┣ 📜useDebounce.ts
┃ ┣ 📜useDeviceSize.ts
┃ ┗ 📜useUser.ts
┣ 📂lib
┃ ┣ 📜banners.ts
┃ ┗ 📜utils.ts
┣ 📂service
┃ ┣ 📜auth.service.ts
┃ ┗ 📜service.ts
┣ 📂types
┃ ┣ 📜Market.ts
┃ ┣ 📜payHistory.ts
┃ ┗ 📜supabase.ts
┣ 📂utils
┃ ┣ 📂supabase
┃ ┃ ┣ 📜client.ts
┃ ┃ ┣ 📜middleware.ts
┃ ┃ ┗ 📜server.ts
┃ ┗ 📜validate.ts
┣ 📂zustand
┃ ┗ 📂cart
┃ ┃ ┗ 📜cart.data.ts
┣ 📜constant.ts
┗ 📜middleware.ts
◻ Copyright ©2024 A05 5JOSAMA team all rights reserved.