Skip to content

WebRTC & Web Socket based blind dating webservice (2023.01 ~ 2023.02)

Notifications You must be signed in to change notification settings

Bluuubery/Rendez-Boo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rendez-Boo

타이틀 이미지

0. 프로젝트 개요

1. 서비스 및 기능 소개

2. 서비스 화면

3. 시스템 아키텍처

4. 개발 환경

5. 컴포넌트 구성도 및 Figma

6. ERD

7. 서비스 및 기술 특장점

8. 멤버 및 회고

0. 프로젝트 개요

✔ 프로젝트명 : Rendez-Boo(랑데부)

✔ 한줄 소개 : Web RTC를 기반으로 한 1대1 / 3대3 블라인드 데이팅 웹 서비스

✔ 개발 기간 : 23.01.09 ~ 23.02.17 (6주)

✔ 팀원 : 이홍주 김명준 안예나 유선준 이재원 정훈

✔ 사용 기술스택 : SpringBoot, React, Docker, AWS + (4. 시스템 아키텍처 참고)

1. 서비스 및 기능 소개

✔ 1대1 미팅

  • 임의의 상대방과 1대1 미팅이 진행됩니다.
  • 처음에 블라인드로 시작했다가 시간이 지날수록 (매 1분마다) 얼굴이 조금씩 공개됩니다.
  • 미팅 중에 상대방이 느낀 감정을 알 수 있습니다.
  • 정해진 시간이 끝나면 미팅이 종료되고 상대방과 친구를 맺을 수 있습니다.

✔ 3대3 미팅

  • 방을 생성하거나 기존에 생성된 방에 입장해서 3대3 미팅을 진행할 수 있습니다.
  • 미팅은 블라인드 상태로 진행되고 게임을 통해서 상대방의 얼굴이 공개됩니다.
  • 게임을 일정 횟수 이상 하게 되면 사랑의 작대기를 통해 마음에 드는 상대를 지목할 수 있습니다.

✔ 채팅

  • 1대1 혹은 3대3 미팅을 통해서 친구가 된 상대와 채팅을 나눌 수 있습니다.

✔ 프로필

  • 1대1 미팅에서 상대방이 느낀 감정 데이터를 종합해 다이어그램 형태로 볼 수 있습니다.
  • 활동 내역에 따른 뱃지가 지급됩니다.

2. 서비스 화면

로그인 / 가입

초기화면

소셜카카오

회원가입1

회원가입2

메인화면

메인페이지

1대1 미팅

1대1입장

1대1대기

1대1페이즈1

1대1페이즈2

1대1페이즈3

1대1친구신청

1대1미팅종료

3대3 미팅

3대3방목록

3대3대기방

3대3미팅시작

3대3미팅게임목록

3대3미팅br31

3대3더게임오브데스

3대3fastclick

3대3fastclick시작

사랑의작대기

사랑의작대기선택

사랑의작대기결과

채팅

채팅

친구프로필

프로필 화면

프로필

3. 시스템 아키텍처

servicearchitecture

4. 개발 환경

개발 환경

5. 컴포넌트 구성도 및 Figma

rdb-component

PagesFlow

6. ERD

mysql erd

7. 서비스 및 기술 특장점

  1. WebRTC를 활용한 실시간 채팅 및 영상 공유 기능 구현

  2. 1대1과 3대3 두 가지 형태의 다른 서비스 통해 풍부한 사용자 경험 제공

  3. 블라인드 + 감정 데이터 분석 및 제공을 통해 사용자에게 차별화된 서비스 제공

    • Face API를 활용한 감정 인식

    • tf.js. facemesh를 사용하여 얼굴 인식 후 Three.js 활용한 블라인드 처리

  4. 각 데이터 형태에 적합한 3가지 다른 데이터베이스 적용(기본 - MySql, 채팅 이력 - MongoDB, JWT - Redis)

  5. 매칭이 된 상대와 Web RTC를 활용한 실시간 채팅 및 NoSql을 활용한 채팅 데이터 누적 및 저장

  6. ( Refresh - Acees ) JWT를 활용한 사용자 인증 및 cookie와 주기적 재발급을 통한 유저 보안

  7. '우주(랑데뷰)'라는 테마를 활용한 통일성 있으며 컨셉츄얼한 디자인

  8. 유저의 서비스 이용 내역 (미팅 기록) 등에 따른 뱃지 부여 및 감정 데이터 다이어그램 형태로 제공

8. 멤버 및 회고


이홍주


김명준


유선준


안예나


이재원


정훈

✔ 이홍주

  • 팀장
  • 일정관리(Jira)
  • Backend Entity 및 API 구현
  • Backend 에러 및 예외처리 handler 설정 및 적용
  • OpenVidu API 설정 및 적용
  • Frontend 3대3 미팅방 구현
  • Frontend 3대3 미팅 게임 구현

✔ 김명준

  • Backend Entity 및 API 구현
  • Docker 및 Jenkins를 활용한 CI/CD 구축
  • Docker 및 AWS를 활용한 서버 배포
  • Nginx를 활용한 프론트 웹서버 구축 및 리버스 프록시 설정 및 적용
  • Facemash와 Three.js를 활용한 얼굴 인식 및 블라인드 설정 및 적용
  • FaceAPI를 활용한 감정인식 설정 및 적용
  • Frontend 1대1 미팅방 구현
  • Frontend 3대3 미팅 게임 구현

✔ 안예나

  • Figma를 활용한 Prototype 제작
  • 서비스 화면 컨셉 구현
  • 서비스 대표 로고 제작
  • Frontend 화상 서비스 시각적 요소 구성
  • Frontend Websocket 활용 요소 시각화
  • Frontend 미팅 룸 구분 요소 구성 및 구현
  • 서비스 시작 페이지, 화상미팅 서비스 페이지, 메신저 페이지 디자인
  • 프로젝트 기록 정리
  • UCC 제작

✔ 유선준

  • Backend Entity 및 API 구현
  • Backend NoSql(MongoDB) 적용
  • WebRTC Stomp 서버 구축 및 클라이언트 생성&연결
  • Frontend Redux 설정 및 적용
  • Frontend JWT 보관 및 발급 구성 및 적용
  • Frontend 로그인 및 로그아웃 구성 및 적용
  • 산출물 문서화
  • 프로젝트 발표

✔ 이재원

  • Backend Entity 및 API 구현
  • Docker 및 Jenkins를 활용한 CI/CD 구축
  • Docker 및 AWS를 활용한 서버 배포
  • Backend Redis 적용
  • Backend JWT 발급 및 인증 로직 구성 및 적용
  • 소셜 로그인 설정 및 적용

✔ 정훈

  • Figma를 활용한 Prototype 제작
  • Frontend 서비스 화면 컨셉 구현
  • 페이지 에니메이션 요소 구현
  • Frontend 소셜 로그인 프론트엔드 요소 구현
  • Frontend 휴대폰 인증 프론트엔드 요소 구현
  • Frontend 미팅용 게임 디자인 적용
  • Frontend 이용자 통계 요소 시각화 및 디자인
  • 페이지 구분 요소 구성 및 구현
  • 회원가입 페이지, 회원정보 페이지, 메인 페이지 디자인

About

WebRTC & Web Socket based blind dating webservice (2023.01 ~ 2023.02)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published