Skip to content

jaeyo03/artLibro-frontend

 
 

Repository files navigation

📖 ArtLibro (독서 & 공연, 예술을 위한 웹서비스)

Image


📌ArtLibro 소개


최근, 정보화 사회를 살아가며 넘쳐나는 데이터와 볼거리 속 문화/예술은 과거보다 우리에게 더 가깝게 다가오고 있습니다. 도서 , 도서관에 대한 정보를 제공하며 또한 공연, 행사, 연극 등의 문화/예술과 도서를 간편하고 상세하게 찾아보고 추천받을 수 있는 문화 플랫폼입니다.


🎯 프로젝트 목표

😭문제 😄해결방안
도서와 공연,예술에 대한 종합 정보를 한번에 찾기 어려움 도서와 공연,예술의 정보를 한곳에서 통합 제공
도서와 공연 예술의 총합의 커뮤니티를 찾기 어려움 자신만의 게시물을 올려 하이브리드 커뮤니티 공간 조성함



🕕 프로젝트 타임라인

단계 기간 주요 작업
1.기획 2월 14일 ~ 2월 18일
- 프로젝트 주제 선정
- open Api 조사
- 가술 구조도 작성
2.설계 2월 19일 ~ 2월 25일
- 피그마 디자인 제작
- 기술 스택 선정
- 전체 아키텍처 설계
3.개발 2월 26일 ~ 3월 09일
- 프론트엔드 개발
- 기능 구현
- 버그 수정
4.테스트 및 발표자료준비 3월 10일 ~ 3월 11일
- 통합테스트
- 디버깅 및 최적화
- 발표 ppt 제작
5.발표 3월 12일 - 최종 결과물 발표 및 시연



🤼 프로젝트 팀원


김재영
Frontend

김동현
Frontend

김지우
Frontend

김태환
Frontend

홍종희
Frontend



🔔주요 기능

1️⃣ 도서,공연,예술 관련 정보 보여주기

Image Image Image

  • 도서,공연,축제 정보 제공 : 급상승 도서 ,인기도서 , 인기공연 , 수상작 공연을 보여준다
  • 가까운도서관 정보제공 : 가까운도서관 정보와 대출 Top10 , 해당 도시 연령별 그래프 보여준다
  • 카테고리에 따라 검색창 이동 : select를 클릭해 도서, 공연,축제를 선택하고 클릭하면 검색창으로 이동합니다

2️⃣ 카테고리별 주요 행사 검색 및 상세 페이지 이동

도서

[도서검색]


Image

  • 키워드 검색 :한달동안 많이 나온 키워드로 도서가 필터되어 나옵니다
  • 도서 정렬 : 자신이 원하는 정렬을 선택해 도서를 정렬시킵니다.
  • 상세 페이지 이동 : 도서 소장 도서관리스트와 지도 , 함께 대출된 관련 도서,독자 추천 도서 를 제공합니다

[도서상세]


Image


도서관

[도서관검색]


Image

  • 지역별 도서관 필터링 : 지역을 클릭하여 특정 지역의 도서관들을 제공합니다.
  • 세부 지역 필터링 : 선택한 지역의 구를 선택하여 도서관을 제공합니다
  • 상세 페이지 이동: 도서관 상세 정보 ,도서관 인기 도서, 도서관 연령별 인기 도서,도서관 위치 를 제공합니다


[도서관상세]


Image




공연, 축제

[공연, 축제 검색]


Image

  • 공연 장르 필터: 장르 클릭할시 해당 장르 공연이 제공됩니다.
  • 공연 카테고리 검색 : 공연명, 공연시설명으로 검색을 합니다
  • 상세 페이지 이동: 공연 상세 정보 ,공연장 상세 정보 연관 공연 정보를 제공합니다


[공연, 축제 상세]

Image


3️⃣ 커뮤니티 공간 제공

커뮤니티

Image

  • 카데고리(도서 , 공연 ,축제)에 대한 리뷰를 작성하여 자신의 생각을 공유
  • 다양한 리뷰를 확인 가능

커뮤니티 상세

Image

  • 좋아요 기능을 통해 여러 사용자들의 좋아요 수를 확인 가능
  • 댓글로 여러 사용자와 소통가능
  • 관심 있는 사용자와 팔로우 기능을 통해 소통 가능

리뷰쓰기

Image

  • 카테고리를 분류해서 게시물 작성
  • 사진 업로드 기능

4️⃣ 마이페이지

Image

  • 내가 작성한 게시글 및 좋아요한 게시글을 한눈에 확인 가능.
  • 팔로우/팔로워 목록 관리 기능 지원.(맞팔로우 되있는지 확인가능)
  • 닉네임 변경 가능



🛠️ 기술스택

프론트엔드

Backend

협업 도구

개발 도구




⛓️ 의존성 설치

├── @tanstack/[email protected]  
├── @tsconfig/[email protected]
├── @types/[email protected]
├── @vitejs/[email protected]
├── @vue/[email protected]
├── @vue/[email protected]
├── @vue/[email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
└── [email protected]



📱 GIT 컨벤션

태그 설명
feat 새로운 기능 추가
fix 버그 수정
docs 문서 수정
style 코드 스타일 변경 (코드 포매팅, 세미콜론 누락 등), 기능 수정이 없는 경우
design 사용자 UI 디자인 변경 (CSS 등)
test 테스트 코드 추가 및 리팩토링 테스트 코드 작업
refactor 코드 리팩토링
build 빌드 파일 수정
ci CI 설정 파일 수정
perf 성능 개선
chore 빌드 업무 수정, 패키지 매니저 수정 (예: .gitignore 수정 등)
rename 파일 혹은 폴더명을 수정만 한 경우
remove 파일을 삭제만 한 경우
Update README.md README 파일 수정은 해당 메시지로 통일



📁 폴더 구조

📦public # 정적 파일 (이미지, 아이콘, 애니메이션 등)
│  ├📂fonts                        # 폰트
│  ├📂icons                        # 아이콘 파일 (SVG , png)
│  └📂images                       # 이미지 파일 (사용자 프로필 사진, 배너 등)
│
📦src
 ┣ 📂apis
 ┃ ┣ 📂community
 ┃ ┃ ┗ 📜post.ts
 ┃ ┣ 📜books.ts
 ┃ ┣ 📜endpoint.ts
 ┃ ┣ 📜kakaoLocals.ts
 ┃ ┣ 📜kopis.ts
 ┃ ┗ 📜user.ts
 ┣ 📂assets
 ┃ ┣ 📜base.css
 ┃ ┣ 📜global.scss
 ┃ ┣ 📜logo.svg
 ┃ ┣ 📜main.css
 ┃ ┣ 📜_color.scss
 ┃ ┣ 📜_font.scss
 ┃ ┣ 📜_mixin.scss
 ┃ ┗ 📜_reset.scss
 ┣ 📂components
 ┃ ┣ 📂bookDetail
 ┃ ┃ ┣ 📜BookMarkIcon.vue
 ┃ ┃ ┣ 📜LoanBookSlider.vue
 ┃ ┃ ┗ 📜ReaderRecommendSlider.vue
 ┃ ┣ 📂bookView
 ┃ ┃ ┗ 📜KeywordContainer.vue
 ┃ ┣ 📂common
 ┃ ┃ ┣ 📜FooterSection.vue
 ┃ ┃ ┣ 📜GoToBack.vue
 ┃ ┃ ┣ 📜goToTop.vue
 ┃ ┃ ┣ 📜HeaderSection.vue
 ┃ ┃ ┣ 📜HomeBookItem.vue
 ┃ ┃ ┣ 📜messageContainer.vue
 ┃ ┃ ┣ 📜NotFound.vue
 ┃ ┃ ┣ 📜notificationContainer.vue
 ┃ ┃ ┣ 📜Pagination.vue
 ┃ ┃ ┣ 📜PerformanceCard.vue
 ┃ ┃ ┗ 📜SearchBox.vue
 ┃ ┣ 📂CommunityDetailView
 ┃ ┃ ┣ 📜CommunityDetailComment.vue
 ┃ ┃ ┣ 📜CommunityDetailContent.vue
 ┃ ┃ ┗ 📜CommunityDetailNextPost.vue
 ┃ ┣ 📂CommunityView
 ┃ ┃ ┣ 📜CommunityMainCard.vue
 ┃ ┃ ┣ 📜CommunityReviewCard.vue
 ┃ ┃ ┣ 📜CommunityTabs.vue
 ┃ ┃ ┗ 📜CommunityUserDropdown.vue
 ┃ ┣ 📂CommunityWriteView
 ┃ ┃ ┗ 📜CommunityWriteForm.vue
 ┃ ┣ 📂Home
 ┃ ┃ ┣ 📜HeroImage.vue
 ┃ ┃ ┣ 📜MainSearch.vue
 ┃ ┃ ┣ 📜RankBook.vue
 ┃ ┃ ┗ 📜RoundCategoryTab.vue
 ┃ ┣ 📂HomeView
 ┃ ┃ ┣ 📜AwardCardActive.vue
 ┃ ┃ ┣ 📜AwardCardDefault.vue
 ┃ ┃ ┣ 📜LibraryChart.vue
 ┃ ┃ ┣ 📜LibraryInfo.vue
 ┃ ┃ ┣ 📜LibraryPopularBooks.vue
 ┃ ┃ ┣ 📜PerformanceAward.vue
 ┃ ┃ ┣ 📜PerformanceHero.vue
 ┃ ┃ ┗ 📜PerformanceMonthly.vue
 ┃ ┣ 📂LibraryDetailView
 ┃ ┃ ┗ 📜LibraryInfo.vue
 ┃ ┣ 📂LibrarySearchView
 ┃ ┃ ┣ 📜LibraryResultList.vue
 ┃ ┃ ┣ 📜LibrarySearchHeroImage.vue
 ┃ ┃ ┣ 📜LibrarySearchResult.vue
 ┃ ┃ ┣ 📜LibrarySelection.vue
 ┃ ┃ ┗ 📜MapFilter.vue
 ┃ ┣ 📂myPage
 ┃ ┃ ┣ 📜FollowerContainer.vue
 ┃ ┃ ┣ 📜FollowingContainer.vue
 ┃ ┃ ┣ 📜UserCardSection.vue
 ┃ ┃ ┣ 📜UserFollowContainer.vue
 ┃ ┃ ┣ 📜UserInfoCardContainer.vue
 ┃ ┃ ┣ 📜UserLikedContainer.vue
 ┃ ┃ ┗ 📜UserPostsContainer.vue
 ┃ ┣ 📂PerformanceDetailView
 ┃ ┃ ┣ 📜PerformanceAward.vue
 ┃ ┃ ┣ 📜PerformanceInfo.vue
 ┃ ┃ ┣ 📜PerformancePlace.vue
 ┃ ┃ ┣ 📜PerformanceRecommend.vue
 ┃ ┃ ┗ 📜PerformanceTab.vue
 ┃ ┗ 📂PerformanceSearch
 ┃ ┃ ┗ 📜GenreContainer.vue
 ┣ 📂config
 ┃ ┣ 📜authConfig.ts
 ┃ ┣ 📜axiosConfig.ts
 ┃ ┣ 📜axiosKakaoLocalConfig.ts
 ┃ ┣ 📜axiosKopisConfig.ts
 ┃ ┗ 📜axiosLibraryConfig.ts
 ┣ 📂constants
 ┃ ┣ 📜book-badge.ts
 ┃ ┣ 📜booksOption.ts
 ┃ ┣ 📜detail-region-code.ts
 ┃ ┣ 📜performanceGenre.ts
 ┃ ┣ 📜queryKey.ts
 ┃ ┣ 📜regionCode.ts
 ┃ ┗ 📜regionDetailCode.ts
 ┣ 📂router
 ┃ ┗ 📜index.ts
 ┣ 📂services
 ┃ ┣ 📜authService.ts
 ┃ ┗ 📜userService.ts
 ┣ 📂stores
 ┃ ┣ 📜auth.ts
 ┃ ┣ 📜authStore.ts
 ┃ ┣ 📜communityStore.ts
 ┃ ┣ 📜likesStore.ts
 ┃ ┗ 📜locationStore.ts
 ┣ 📂types
 ┃ ┣ 📂community
 ┃ ┃ ┗ 📜communityType.ts
 ┃ ┣ 📂library
 ┃ ┃ ┗ 📜library.types.ts
 ┃ ┣ 📜Book.ts
 ┃ ┣ 📜libraryType.ts
 ┃ ┣ 📜location.types.ts
 ┃ ┣ 📜peformance.types.ts
 ┃ ┣ 📜Performance.ts
 ┃ ┗ 📜user.ts
 ┣ 📂utils
 ┃ ┗ 📜usePostParser.ts
 ┣ 📂views
 ┃ ┣ 📂bookDetail
 ┃ ┃ ┣ 📜BookDetailView.scss
 ┃ ┃ ┗ 📜BookDetailView.vue
 ┃ ┣ 📂bookView
 ┃ ┃ ┣ 📜BookView.scss
 ┃ ┃ ┗ 📜BookView.vue
 ┃ ┣ 📂community
 ┃ ┃ ┣ 📜CommunityDetailView.vue
 ┃ ┃ ┣ 📜CommunityEditView.vue
 ┃ ┃ ┣ 📜CommunityView.vue
 ┃ ┃ ┗ 📜CommunityWriteView.vue
 ┃ ┣ 📂mypage
 ┃ ┃ ┗ 📜MyPageView.vue
 ┃ ┣ 📜404View.vue
 ┃ ┣ 📜CallbackView.vue
 ┃ ┣ 📜HomeView.vue
 ┃ ┣ 📜LibraryDetailView.vue
 ┃ ┣ 📜LibrarySearchView.vue
 ┃ ┣ 📜LoginView.vue
 ┃ ┣ 📜PerformanceDetailView.vue
 ┃ ┣ 📜PerformanceSearchView.vue
 ┃ ┗ 📜RegisterView.vue
 ┣ 📜App.vue
 ┗ 📜main.ts



🖥️ 프로젝트 실행 방법

1️⃣ 프로젝트 클론 (Github에서 코드 가져오기)

git clone https://github.com/ArtLibro/artLibro-frontend.git

2️⃣ 프로젝트 폴더 이동

cd artLibro-frontend

3️⃣의존성 설치

npm i

4️⃣ 프로젝트 실행

npm run dev

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Vue 78.9%
  • TypeScript 17.2%
  • SCSS 3.7%
  • Other 0.2%