Skip to content

[JoA] - 대학생 네트워킹 서비스 백엔드 코드

Notifications You must be signed in to change notification settings

hongkikii/JoA-2023-2

Repository files navigation

💌 JoA

고백에 필요한 것은 용기가 아니라 “JoA”다

Spring Boot + SwiftUI를 사용한 대학교 네트워킹 어플리케이션

💁🏻‍♀️ 프로젝트 소개

강의실에서 도서관에서…

말 한 번 걸어보고 싶고 친해지고 싶었지만

다가가지 못해 아쉬웠던 기억, 혹시 있으신가요?

이제 JoA가 대신 용기내 드리려 해요!

앱에서 내 주변에 있는 친구들을 확인하고,

하트와 투표를 보내 마음을 전해보세요💘

⚙️ 개발 환경

  • Java 17Spring Boot 3.1.1
  • SwiftUISwift 5.9UIKitCombine
  • MySQL, PostgreSQL
  • AWS - Lightsail, RDS, S3, Route 53, Cloudfront
  • GitHub, Notion, Discord, Slack

👩‍👧‍👦 멤버와 역할

홍향미

  • 프로젝트 리더, 백엔드
  • 회원, 위치, 하트, 투표
  • Lightsail, S3, DNS

최종현

  • 백엔드
  • 채팅
  • RDS

최가의

  • 프론트엔드
  • UI/UX 디자인 및 구현

⏳ 진행 일정

2023.06.26 - 2023.07.02

기능 정리, ERD&UI 프로토타입 생성

2023.07.03 - 2023.12.03

개발, 테스트, 앱스토어 심사

2023.12.04

앱스토어 등록 완료🥳

2023.12.04 - 2023.12.15

베타 테스트

2024.01.03 - 2024.03.01

리팩토링, 테스트, 앱스토어 재심사

2024.03.04

정식 출시🥳

🚀 기능

회원

회원

계정 생성

  1. 서버에서 학교 웹메일로 전송한 인증번호를 통해 해당 학교의 학생인지를 검증한다.
  1. 아이디 중복 검증, 아이디/비밀번호 유효성 검증을 거쳐 회원 가입을 완료한다.
  1. 사용자는 아이디, 비밀번호를 통해 로그인 할 수 있다.
  1. 사용자는 아이디를 잊어버렸을 시, 학교 웹메일로 아이디를 전송받을 수 있다.
  1. 사용자는 비밀번호를 잊어버렸을 시, 학교 웹메일로 임시 비밀번호를 전송받아 사용할 수 있다.
  1. 사용자는 비밀번호를 변경할 수 있다.
  1. 사용자는 로그아웃을 할 수 있다.
  1. 사용자는 탈퇴를 할 수 있다.
  1. 사용자는 프로필 사진을 변경하거나 삭제할 수 있다.
  1. 사용자는 한 줄 소개를 변경하거나 삭제할 수 있다.
  1. 사용자는 계정 정보와 획득한 투표, 하트에 관한 정보를 확인할 수 있다.
  1. 사용자는 5회 신고될 시 1일 계정 정지에 처해진다.

  2. 사용자는 10회 신고될 시 7일 계정 정지에 처해진다.

  3. 사용자는 15회 신고될 시 계정 영구 정지에 처해진다.

  4. 영구 정지된 계정은 재가입이 불가능하다.

위치
하트

하트

  1. 사용자는 익명 혹은 실명으로 다른 사용자에게 매일 한 번 하트를 보낼 수 있다.
투표
채팅

채팅방 생성

  1. 사용자는 특정 사용자에게 하트를 보내, 현재 특정 사용자와 채팅방이 존재하지 않은 경우 채팅방을 생성할 수 있다.

    1. 익명으로 보낼 시, 상대방이 하트를 보냈을 경우 채팅방이 생성된다.
    2. 실명으로 보낼 시, 바로 채팅방이 생성된다.

채팅방 목록

  1. 사용자는 생성된 채팅방 정보를 확인할 수 있다.

채팅 전송

  1. 사용자는 아래 경우를 제외하고 채팅방에서 채팅을 보낼 수 있다.

1. 채팅방이 유효기간이 지났을 경우 “채팅방 유효기간이 {유효기간}을 초과하였습니다.” 라는 문구가 보여진다.
2. 상대방이 채팅방을 나갔을 경우 “상대방이 채팅방을 나갔습니다.” 라는 문구가 보여진다.
3. 상대방이 JoA 앱을 탈퇴했을 경우 “상대방이 JoA를 탈퇴하였습니다.” 라는 문구가 보여진다.
4. 채팅방 내 신고내역이 존재했을 경우 “신고된 채팅방입니다.” 라는 문구가 보여진다.

채팅 신고

  1. 채팅 수신자는 채팅 내용이 불순할 경우 신고 카테고리를 선택한 후 채팅을 신고할 수 있다.

채팅방 연장하기

  1. 사용자는 채팅방을 연장하고 싶은 경우, 채팅방이 생성된 시점으로 24시간 내에 채팅방 연장 투표를 할 수 있다.

채팅방 나가기

  1. 사용자는 ‘채팅방 나가기’ 버튼을 눌러 채팅을 방을 나갈 수 있다.
알림

알림 발송

  1. 사용자는 하트 전송(익명/실명), 투표, 채팅방, 채팅에 대해 푸시 알림을 받을 수 있다.

📄 문서


⚠️ 주의사항

해당 리포지토리는 프론트엔드 코드를 제공하지 않습니다.
App Store에 ‘JoA’를 검색하여 어플리케이션을 직접 만나보실 수 있습니다!

About

[JoA] - 대학생 네트워킹 서비스 백엔드 코드

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages