| 직책 | 이름 | 분담 업무 |
|---|---|---|
| 팀장 | 유정석 | 백엔드 개발 및 UI디자인 |
| 팀원 | 김동규 | 프론트엔드 개발 및 UI디자인 |
-
도서 데이터 기반 추천 웹 서비스 개발
- 기초데이터를 포함해 알라딘 API와 GPT의 작가 정보 수집으로 다양한 도서와 작가, 스레드 커뮤니티 경험 가능.
-
도서 추천 알고리즘 구현
- 사용자가 찜한 책들을 기반으로 책 내용 및 줄거리의 유사도를 측정하여 보유 데이터베이스의 책 중애 상위 5권 추천
- 사용자가 선택한 기분을 기반으로 GPT가 무작위 도서 추천. 추천하면 알라딘 API 쿼리 검색으로 데이터 수신
-
커뮤니티 서비스 구성
- 스레드와 댓글을 통해 도서에 관한 커뮤니티성 게시판 구성
- 주변 도서관에서의 도서 대출 가능 여부 도서관 정보나루 API 통해 사용자에게 제공
- 유튜브 API 기반 책 리뷰 영상 제공
-
서비스 관리 및 유지보수
- 5월 28일 모든 기능 및 UI 설계, 구현 완료
- 코드 재사용성 높이고 유지보수성 높인 다음 배포 예정
- 사용자가 마음에 드는 도서 찜하기
- 찜한 도서들의 정보를 리스트로 만들어 임베딩 모델을 활용해 도서의 줄거리 및 내용 유사도 측정
- 유사도 측정 후 상위 5개의 도서 추천
- 찜한 책이 없을 경우 버튼 비활성화 및 찜 권유 메세지 출력
- 사용자가 주어진 5가지의 감정 중 한가지 선택함
- GPT로 무작위 책 5권을 목록으로 반환함
- 알라딘 API 쿼리 검색으로 존재하는 도서 정보 반환
- 바로 사용자에 리스트 제공
- 메인페이지
- 로그인 및 유저 정보 CRUD
- 도서 CR
- 작가 CR
- 쓰레드 CRUD
- 도서 대출 여부 사용자 제공
- 도서 유튜브 리뷰 영상 제공
- 사용자 감정 기반 도서 추천
- 사용자 관심(찜) 기반 도서 추천
-
작가 정보 생성
- 알라딘 API에서도 부분적으로 작가 정보를 제공하기 때문에 작가에 대한 정보 얻기 힘들었음
- 프롬프트 생성하여 작가의 이름을 쿼리로 보내 해당 작가의 정보와 프로필 사진 위키피디아나 오픈 소스에 존재 시 json 데이터로 수신
- 작가 목록 및 작가 팔로우, 작가 정보 페이지 제공
-
주변 도서관 대출 여부
- 주변 3km이내의 도서관을 도서관 정보나루 API를 활용해 수신. 근처 도서관을 얻는 API기능은 없었기에 도서관의 위도와 경도를 API정보에서 뽑아내서 직선거리를 계산.
- 도서 상세 페이지에서 해당 도서의 고유 ISBN 값을 활용해 도서관에서 대출 여부 API로 수신 후 사용자에게 제공
-
사용자 감정 기반 책 추천
-
스레드 작성 시 AI 피드백
- 스레드 내용 작성한 뒤 AI 피드백 실행함
- 본인이 쓴 내용과 AI 피드백 내용 둘 중 하나 채택 가능
-
스레드 이미지 생성
- DALLE 2 모델 활용하여 스레드 내용을 표현하는 이미지 생성
- 스레드 내용을 GPT에게 보내고 키워드 5가지를 반환받아 DALLE 2 프롬프트에 삽입
-
팀장 : 유정석
- Bootstrap이나 CSS 스타일링을 할 때 구현해야 하는 방식은 머릿속으로 생각이 나지만 손에 익지 않아 공식 문서나 MDN에서 헤메는 시간이 길었음
- axios로 요청하는 로직이 너무 많아서 코드 가독성이 너무 떨어져 있었으나 plugin 활용 방법을 터득하여 로직을 좀더 단순화하고 코드 재사용성 높일 수 있었음
- 기능과 데이터 전처리를 두 명이서 설계하고 작성하다보니 중간에 모델이나 로직을 바꾸는 일이 허다했음. git을 통한 형상관리가 얼마나 중요한지 깨달음
-
팀원 : 김동규
- Vue부분을 주로 맡아서 진행을 하였는데 백엔드와 프론트엔드의 연동이 생각보다 쉽지 않음
- 프로젝트를 진행하며 중간중간 문제가 필요한 모델이나 필드들이 많아지는 걸 보며 초반 설계의 중요성을 알게 되었음
- Vue의 컴포넌트를 나누고 store를 쓰는 것이 코드 재사용성이나 유지/보수 측면에서 유리하다는 것을 알게 되었음.
- 추후 예정








.png)
.png)














.png)
.png)