Skip to content

반려견을 키우는 사용자가 서로 정보를 교환하고, 경험을 공유하며 도움을 주고받을 수 있는 플랫폼입니다.

License

Notifications You must be signed in to change notification settings

PuddyProject/Puddy_FrontEnd

Repository files navigation

CI

💙 PUDDY : FRONTEND

반려견에 대한 다양한 질문과 응답을 공유하는 커뮤니티 서비스

puddy_readme_02

PUDDY 서비스 바로가기

현재 360*740에 최적화되어있습니다. (갤럭시S8+)


프로젝트 개요

퍼디Pet + Buddy의 합성어로
반려견을 자신의 가족, 친구와 같이 생각한다는 의미에서 네이밍되었습니다.

반려견을 키우는 주인이 서로 정보를 교환하고,
경험을 공유하며 도움을 주고받을 수 있는 플랫폼입니다.

기술 스택

FrontEnd.




코드/커밋 컨벤션

프론트엔드 컨벤션


폴더 구조

├─assets
│  └─login
├─components
│  ├─common
│  ├─main
│  ├─qnaDetail
│  └─signup
├─constants
├─context
├─fonts
├─hooks
├─layouts
├─pages
│  ├─AuthExpert
│  ├─Bookmark
│  ├─CardDetail
│  ├─CardList
│  ├─CardSearch
│  ├─CommentAnswer
│  ├─ExpertCardList
│  ├─ExpertProfile
│  ├─ExpertProfileEditor
│  ├─FindAccount
│  ├─Login
│  ├─Main
│  ├─MyActivityInfo
│  ├─MyPage
│  ├─MyProfileEditor
│  ├─NewPost
│  ├─NotFound
│  ├─Notification
│  ├─PetProfile
│  ├─PetProfileEditor
│  ├─Review
│  └─Signup
├─routes
├─styles
│  ├─abstracts
│  ├─base
│  ├─components
│  ├─layout
│  │  ├─footer
│  │  └─header
│  └─pages
├─types
└─utils
    ├─initialValues
    └─validate

Preview

로그인

회원가입한 사용자의 경우
로그인이 성공하면 메인페이지로 이동됩니다.

Honeycam 2023-04-20 21-18-36


회원가입

사용자가 필수 입력 값을 입력하지 않으면
해당 인풋 박스가 흔들리는 인터랙션을 적용하였습니다.
정규식을 통해 유효한 아이디, 비밀번호, 이름, 이메일을 확인하며,
아이디와 이메일은 중복검사를 하도록 구현하였습니다.

Honeycam 2023-04-20 21-08-31


메인 페이지

상단 캐러셀을 통해 광고와 같은 배너를 삽입할 수 있도록 구현하였습니다.
인기 Q&A, 최신 Q&A, 퍼디 신규 전문가, 커뮤니티 HOT, 커뮤니티 NEW 정보를 확인 할 수 있습니다.

Honeycam 2023-05-04 04-46-59


Q&A 및 커뮤니티 목록 페이지

Q&A 질문 글을 무한 스크롤로 구현했습니다.
더 이상 가져상 가져올 데이터가 없는 경우 마지막 페이지임을 알리는 문구를 표시합니다.
정렬 기능을 통해 최신순, 오래된 순, 인기 순으로 게시글을 확인할 수 있습니다.

Honeycam 2023-05-04 04-49-55


Q&A 및 커뮤니티 글쓰기

Q&A와 커뮤니티 글 CRUD를 구현하였습니다.

Honeycam 2023-05-04 04-42-35

Honeycam 2023-05-04 04-48-05


Q&A 상세페이지

본인이 작성한 Q&A글에는 답변 작성은 불가하며, 다른 사용자가 남긴 답변만 채택할 수 있습니다.
하나의 Q&A글에는 하나의 답변만 등록할 수 있습니다.
채택된 답변은 가장 최상단에 노출됩니다.
일반 사용자가 아닌, 전문가 사용자의 리뷰를 채택할 경우 리뷰 작성이 가능합니다.
채택된 답변은 삭제 및 수정이 불가능합니다.

_2023_04_21_21_12_55_792.mp4

커뮤니티 상세페이지

작성된 게시글을 확인할 수 있으며,
댓글을 작성할 수 있습니다.

_2023_04_21_21_13_45_654.mp4

Q&A 및 커뮤니티 검색 페이지

Q&A와 커뮤니티를 제목 기준으로 검색할 수 있습니다.

_2023_04_21_21_14_49_265.mp4

마이페이지

내 프로필 수정, 내 펫 등록, 비밀번호 변경/계정 로그아웃 등이 가능한 페이지입니다.

Honeycam 2023-05-02 08-12-20


펫 등록&수정

펫 프로필 등록, 수정을 할 수 있습니다.
작성한 프로필은 Q&A 게시글 등록 후 게시글 내 태그 형태로 나타납니다.

Honeycam 2023-05-02 08-17-27

Honeycam 2023-05-02 08-17-56


내 프로필 등록&수정

닉네임과 프로필 사진을 등록/변경할 수 있습니다.
'퍼디'로 시작하는 닉네임은 가입 시 자동으로 부여하고 있으므로 '퍼디'로 시작되는 닉네임은 사용할 수 없습니다.
닉네임 유효성 검사와 프로필 사진 확장자를 제한하고 있습니다.

Honeycam 2023-05-02 08-18-24


전문가 서류 제출

현재는 어드민 페이지가 존재하지 않아 테스트를 위해 서류 제출 시 바로 권한을 부여하도록 해놓았습니다.

Honeycam 2023-05-02 08-18-51


전문가 프로필

마이페이지에서 전문가 프로필 작성 시 전문가 프로필을 확인할 수 있는 페이지입니다.
본인의 프로필인 경우에만 '수정하기' 버튼이 노출됩니다.

Honeycam 2023-05-02 08-20-31


Figma

image


프로젝트 멤버

Back. Front. Front.
전상준 이유 홍주완
전상준 이유 홍주완
💎 팀원 👑 팀장 💎 팀원

회고&이슈

사이드 프로젝트 회고 - 팀 빌딩부터 기획까지
JWT 리프레시 토큰 도대체 언제, 어떻게 쓰는거지?
세션스토리지에서 토큰을 강제 삭제 한다면?
리액트 서스펜스(Suspense) 사용기
도전 클린코드! API endpoint, routes Path 상수로 바꾸기
인풋 인터랙션 적용시켜보기
웹 접근성에 대해 고민해보고 적용해보기 - tabindex
사이드 프로젝트 개발 마무리 회고
UX/UI 개선 및 반응형 작업하기1
UX/UI 개선 및 반응형 작업하기2

미해결 이슈&개선 가능 사항

1. 소셜 로그인(카카오) 오류
카카오 로그인 진행 시 오류가 발생합니다.

2. 코드의 중복과 매직 넘버가 존재합니다.
재사용이 가능한 코드와 클린코드를 위한 리팩토링 과정이 필요합니다.

3. 어드민 페이지와 관련 API의 부재로 현재는 전문가 서류 제출 시 자동으로 사용자의 권한을 변경하고 있습니다.
어드민 페이지를 통해 제출한 서류를 검토 후 사용자의 권한을 변경하는 로직이 필요합니다.

4. 반응형 작업
현재는 모바일(갤럭시 S8+)에 최적화되어있으며, 작업 진행중입니다.

5. form 인터랙션 통일
일부 페이지는 shake 애니메이션 인터랙션으로 required 인풋 값이 비어져있는 것을 확인할 수 있도록 하는 반면,
일부 페이지는 버튼의 활성화, 비활성화 형식으로 form이 구성되어있습니다.
따라서 form 제출의 인터랙션이 통일되도록 수정해야합니다.

6. 리프레시 토큰
서버로부터 리프레시 토큰을 받고 있으나,
기술적인 이슈로 액세스 토큰이 만료되었을 때 리프레시 토큰을 사용하는 로직이 구현되어있지 않습니다.

7. UX/UI 개선
모바일 환경을 고려하지 못한 UX/UI 개선이 필요합니다.



puddy_readme_03

About

반려견을 키우는 사용자가 서로 정보를 교환하고, 경험을 공유하며 도움을 주고받을 수 있는 플랫폼입니다.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •