Skip to content

DongMinE/PEEKPICK

 
 

Repository files navigation

부담없는 취향 공유 공간! PEEKPICK 👀

📌소개

📃개요

위치 기반 익명 채팅 서비스
PEEKPICK 은 점심시간, 쉬는시간, 버스 대기시간 등의 지루한 유휴시간을 재미있게 보내기 위한 위치 기반의 익명 채팅 서비스입니다.

📑주요 기능

  • 소셜 로그인
    • Kakao
    • Naver (검수 중...)
    • Google
  • 위치 기반 일대일 익명 채팅
  • 위치 기반 휘발성 메시지 작성
    • 메시지 관심 표현 (좋아요, 싫어요)
  • 악성 유저 신고
    • 악성 메시지 신고
    • 악성 채팅 신고
  • 개인별 취향 설정
    • 한 줄 소개
    • 이모지
    • 취향 (좋아요, 싫어요 각각 5개 씩)
    • 접두사
    • 닉네임

👨‍👨‍👧‍👧팀 구성

👑이다영 전준영 강동표 김준형 김용범 김동민
Leader
Backend
Backend
Infra, CI/CD
Backend
Infra
Frontend Frontend Frontend

📅 진행 기간

- 전체 기간 : 2023. 07. 10 ~ 2023. 08. 18 [ 6주 ]
- 기획 및 설계 : 2023. 07. 10 ~ 2023. 07. 21
- 개발 : 2023. 07. 24 ~ 2023. 08. 11
- 버그 수정, 산출물 작성 : 2023. 08. 14 ~ 2023. 08. 18

🛠 개발 환경

협업 도구 :

운영 및 배포 :

버전 상세 정보
  • Ubuntu : 20.04 LTS
  • Jenkins : 2.417
  • Docker : 24.0.5
  • Nginx : 1.18.0 (Ubuntu)
  • Prometheus : 1.9.13

백엔드 :

버전 상세 정보
  • Java : OpenJDK 11.0.1
  • Spring : 5.3.29
  • Spring Boot : 2.7.14
  • Spring Security : 5.7.10
  • MySQL : 8.0.33
  • Gradle : 8.1.1
  • Redis : 3.2

프론트엔드 :

버전 상세 정보
  • Java Script : ES 6
  • React : 18.2.0
  • Redux : 8.1.1
  • npm : 9.6.7
  • Axios : 1.4.0


📺서비스 상세 내용

📲주요 기능
  • 메인 페이지
    • 처음 접속 시 보이는 페이지로 소셜로그인과 소개 페이지로 넘어갈 수 있습니다.

  • 소개 페이지
    • 기기에서 첫 접속 시, 혹은 소개 페이지 버튼을 통해 이동할 수 있으며 서비스에 대한 간단한 소개를 제시합니다.

기본 신상정보 입력

이모지 다시 뽑기

접두사 및 닉네임 설정

취향 정보 선택

  • 회원 가입
    • 소셜로그인 이후 이모지, 접두사, 닉네임, 취향을 입력받습니다.
    • 사용자의 편의를 위해 소셜 로그인 시 허용한 데이터는 미리 값을 채워주도록 하였습니다.
    • 취향은 최소 1개, 최대 5개씩 선택할 수 있습니다.

  • PICKER (피커)
    • 현재 주변의 접속 중인 다른 유저들을 화면에 보여줍니다.
    • 선택 시 취향 정보, 한 줄 소개, 채팅 횟수등을 확인할 수 있습니다.

  • 거리 조절
    • PICKER 혹은 PEEK를 탐색할 수 있는 거리를 설정한다.



  • 채팅 요청
    • PICKER를 선택 후 PICK버튼을 누르면 채팅 요청을 보냅니다.



  • 채팅
    • 15초 안에 수락한다면 채팅방이 개설됩니다.
    • 거절 시 요청자에게 거절하였습니다. 알림이 보입니다.

  • 상대방 정보 확인
    • 채팅을 수락한 유저는 상대방의 이모지를 클릭함으로써 정보를 확인할 수 있습니다.

  • 필터링
    • 익명 컨텐츠이므로 비속어 필터링을 적용했습니다.
    • 비속어 사용 시 로 표시됩니다.

  • 신고
    • 상대를 신고하고 나갈 수 있습니다.
    • 채팅방을 나가면 상대는 더 이상 채팅을 보낼 수 없습니다. 채팅을 보내면 보낼 수 없다는 알림을 띄웁니다.



  • 맵 변경
    • 배경으로 띄울 맵을 변경할 수 있습니다.



PEEK 확인

PEEK 확인 후

PEEK 신고

PEEK 작성

  • PEEK
    • 기본 1시간 후 휘발되는 메시지 PEEK를 보여줍니다.
    • 선택 시 남긴 사람과 내용, 호불호 정도를 보여줍니다.
    • 호불호 선택시 지속 시간이 10분 씩 증가합니다.
    • 확인 후에 PEEK는 회색으로 변하며, 재 탐색시 다시 보여주지 않습니다.
    • 비속어 필터링을 실시하며 신고가 가능합니다.
    • 지속시간이 6시간 이상인 PEEK는 ✨빛나는 특별한 하트로 표현됩니다.
    • 우측 하단 버튼을 통해 PEEK를 작성할 수 있습니다.



  • 마이페이지
    • 기본 정보를 보여주고, 한줄소개, 닉네임, 접두사, 이모지 취향을 변경할 수 있습니다.
    • 추후 맵 획득이나, 한정 이모지 획득 확장을 위한 POINT를 확인할 수 있습니다. POINT는 채팅 횟수와 PEEK 선택 횟수를 통해 계산됩니다.
    • 채팅 횟수와 PEEK 선택을 받은 횟수를 볼 수 있습니다.





📚산출물

📗시스템 구성도

📘ER Diagram


🤝협업

🔏Notion

🔑Commit Convention

태그 설명 예시
Feat 새로운 기능 추가 Feat: 피커 거리순 찾기 기능 추가
Fix 버그 수정 Fix: 거리 지정 불가 수정
Build 빌드 관련 파일 수정 Build: Docker파일 수정
Docs 문서 추가/수정/삭제 Docs: 리드미 수정
Style 코드형식 변경(비즈니스 로직 변경 ❌) Style: 피커 서비스 코드형식 변경
Refactor 코드 리팩토링 Refactor: 피커 비즈니스 로직 리팩토링
Test 테스트 Test: 회원가입 테스트
Chore 기타 변경사항 Chore: 공백 제거

🔑Branch

  • develop/be : 백엔드 프로젝트 배포
  • develop/fe : 프론트엔드 프로젝트 배포
  • feature/be/[기능명] : 백엔드 기능 개발
  • feature/fe/[기능명] : 프론트엔드 기능 개발
  • hotfix/be/[기능명] : 급한 백엔드 에러 수정
  • hotfix/fe/[기능명] : 급한 프론트엔드 에러 수정

About

부담없는 취향 공유 공간! PEEKPICK 👀

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 34.4%
  • SCSS 31.3%
  • JavaScript 25.4%
  • CSS 8.5%
  • Other 0.4%