Skip to content

RyuTa960625/WhoRU

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

795 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo

우리들의 대나무 숲, whorU! 

📒Notion

🧷목차

  1. 서비스 소개
  2. 프로젝트 목표
  3. 팀원 구성
  4. 기술 스택
  5. 역할 분담
  6. 서비스 아키텍처
  7. 1.1 패치
  8. 주요 기능

👀 1. 서비스 소개

📨 whorU란?


우리들의 대나무 숲 Whoru! 언제 사용하는게 좋을까요?
  • 지금 내 감정을 누군가에게 전하고 싶어!
  • 나만 가지고 있기엔 아까운 사진들!
  • 내 목소리 어때?

    익명을 기반으로 랜덤한 대상에게 메시지를 보내보세요!



    whorU 서비스 바로 가기



    2. 프로젝트 목표

    whorU 프로젝트는 운영적인 측면을 고려하여 개발하는것과

    사용자들로부터의 실제 피드백을 기반으로 1.1 패치를 진행하는 것을 목표로 진행하였습니다.

    따라서 운영적인 측면에서는 개발자들이 쉽게 이슈에 대응하기 위해 로깅, 모니터링 툴을 사용하였고

    개발 서버 EC2 와 운영 서버 EC2를 최대한 동일한 환경으로 구축하여

    다음 버전 업데이트에 호환성 문제없이 진행할 수 있었습니다.

    피드백은 아래와 같은 구글설문을 통해 진행하였습니다.



    📎3. 팀원 구성

    김정현

    Back-End

    정민호

    Infra

    김회창

    Back-End

    류태수

    Front-End

    강정수

    Front-End

    오승현

    Front-End



    🛠️ 4. 기술 스택

    Back-End

    Logo

    Version

    Spring boot : 3.2.4
    JDK 21
    Gradle : 8.7
    JWT : 0.12.3
    MySQL : 8.3.0
    Redis : 7.2.4
    



    Front-End

    Logo

    Version

    Node : 20.11.1
    React : 18.2.0
    Vite : 5.1.6
    


    Infra

    Logo

    Version

    Docker : 26.0.2
    Nginx : 1.25.5
    


    Tools

    Logo


    👪 5. 역할 분담

    😁 김정현

    • 메트릭 모니터링 환경 구축
    • WAS Log 수집 및 모니터링 환경 구축
    • 수집 컨텐츠 개발
    • 사용자 신고 로직 개발
    • 개발 서버 환경 구축 및 운용

    😇 정민호

    • FE, BE 브랜치 별 CI/CD 환경 구축
    • 카카오, 구글 소셜 로그인 구현
    • Spring Security 개발
    • 회원관리 API 개발
    • 최종 프로젝트 발표

    😌 김회창

    • 메세지 도메인 구현
    • 관리자 공지사항 도메인 구현
    • Firebase Cloud Message 푸시알림 백엔드 구현

    😎 류태수

    • 우편함 페이지
    • 데일리 메시지 페이지
    • 개인 메시지 페이지
    • 메시지 전송 페이지

    😊 강정수

    • 소셜 로그인
    • 회원 관리
    • 관리자 페이지

    🤓 오승현

    • 마이페이지 디자인
    • 수집 컨텐츠


    ⚙️ 6. 서비스 아키텍처

    System Architecher


    7. 1.1 패치

    기존의 1.0 ver 의 주요 사용자 기능들은 다음과 같았습니다.

    • 메세지 랜덤발송 및 답장

      • 메세지 송신자를 제외한 랜덤한 1명에게 메세지를 전송하고 Firebase 알림을 보낸다.

      • 메세지를 받은 사람은 1회에 한해서 답장을 보낼 수 있다.

    • 랜덤박스 기능

      • 하루 최대 3회, 메세지 전송시 얻을 수 있다.

      • 랜덤박스에서 등급에 따른 확률로 프로필 아이콘을 획득할 수 있다.

    • 문의하기 기능

      • 문의하기 글을 등록하면 관리자가 답변을 달 수 있다.
    • 프로필 서비스

      • 랜덤박스를 열어 볼 수 있으며, 획득한 아이콘 컬렉션을 열람할 수 있다.

      • 획득한 아이콘의 경우 프로필 아이콘 변경이 가능하다.

      • Firebase 알림 수신여부를 결정힐 수 있다.

    이에 따라 1.0을 배포한 이후 구글 설문직접적인 소통을 통해 피드백을 모았고

    피드백을 요약하면 다음과 같습니다.

    • 유저가 많으면 많을수록 답장을 받는데까지 시간이 오래걸린다.

    • 메세지를 보내고 하루 3번 랜덤박스를 획득하고 나면 답장이 오기까지 컨텐츠가 없다.

    • 랜덤박스 얻는횟수 3회 제한이 너무 적은것 같다.

    • 답장메세지 수신시 어떤 메세지의 답장인지 알수 있으면 좋겠다.

    • 알림 수신이 잘 안된다.

    이에 따라 저희팀이 결정내린 1.1 패치사항은 아래와 같습니다.

    유저의 컨텐츠를 늘리기 위한 패치

    1. 메세지 전송 시스템에 우편함 시스템 패치

    2. 데일리 메세지 기능 패치

    3. 랜덤박스 획득방법 변경

    4. 답장 메세지일 때, 어떤 메세지의 답장인지 확인할 수 있는 모달 제공

    편의성 패치

    1. 모바일 환경에서 메세지를 쓰는 페이지에 진입시 키보드가 켜지는 문제 해결

    주요 버그사항

    1. IOS 환경에서 Firebase 알림이 설정되지 않는 문제 해결

    🎥 8. 주요 기능

    메시지 전송 및 My Message

    • 텍스트, 이미지, 음성 3가지의 Media Type 지원
    • 전송 시 30% 확률로 랜덤박스 획득
    • 전송 시 랜덤 대상이 아닌 공통 우편함으로 전송
    • 우편함에서 가져온 메세지는 My Message에서 확인가능
    • 답장 메세지의 경우 My Message에 보관되며, 어떤 메세지의 답장이었는지 from 버튼을 통해 모달로 확인가능
    • My Message에서 메세지 신고 가능
    텍스트 메세지 전송 이미지 메세지 전송 음성 메세지 전송
    텍스트 메시지 전송 이미지 메시지 전송 음성 메시지 전송
    My Message 신고

    데일리 메세지

    • 당일 날짜를 기준으로 00:00:00 ~ 23:59:59 사이의 메세지를 볼 수 있음
    데일리 메세지

    우편함

    • 익명으로부터 전송된 메시지는 우편함에 저장
    • 사용자는 우편함에서 해당하는 메시지를 가로챌 수 있음
    • 가로채면 사용자의 메시지로 귀속되며, 1회에 한해서 답장 가능
    우편함
    메시지 가로채기

    문의하기

    • 사용자는 문의하기를 통해 관리자와 소통할 수 있음
    문의하기 관리자 답변 후

    관리자

    • 관리자는 공지사항을 작성 및 수정할 수 있음
    • 관리자는 문의사항들을 조회하고, 답글을 달 수 있음
    • 관리자는 신고내역을 조회할 수 있고, 사용자 정지 처리를 할 수 있음
    • 공지사항 작성시 모든 회원에게 Firebase 푸시알림 발송
    공지사항 신고 문의사항
    관리자

    푸시알림

    • 사용자는 백그라운드 및 포그라운드에서 FCM 알림을 수신할 수 있음
    공지사항 백그라운드 공지사항 포그라운드 답장 백그라운드 답장 포그라운드

  • About

    No description, website, or topics provided.

    Resources

    Stars

    Watchers

    Forks

    Releases

    No releases published

    Packages

     
     
     

    Contributors