프로그래머스 백엔드 데브코스 5기 7회차 8팀 2차 프로젝트입니다.
실시간 채팅서비스를 깃허브와 연결하여 좀 더 쉬운 개발을 도울 수 있는 채팅서비스입니다.
| 기술 | 버전 |
|---|---|
| Java | 21 |
| JDK | OpenJDK 23.0.2 |
| Spring Boot | 3.4.5 |
| Spring Boot Libraries | Data JPA, Web, Web Socket, Security, OAuth2, JWT, Webflux, Flyway |
| Lombok | 1.18.36 |
| MySQL MySQL Community | 8.4.4 |
| MySQL Connector | 9.1.0 |
| Redis | 3.0.504 |
| React | 19.1.0 |
| HTML5 | - |
| javascript | - |
- 폼로그인과 깃허브 OAuth로그인을 지원, 인증을 JWT로 관리
- 깃허브 레포지토리 URL을 첨부하여 채팅방을 개설하면 채팅방이 해당 레포지토리에 Webhook이 연결
- 각 채팅방 생성시 초대코드가 생성, 이를 통해 채팅방에 참여
- 실시간 채팅을 지원
- 코드 전송 시 각 언어에 맞추어 하이라이팅 지원하여 가독성 향상
- 사진 전송 기능
- 채팅방에 연결된 깃허브 레포지터리에서 이벤트 발생(이슈, PR 등)시 이를 채팅방에 채팅형식 알림으로 전송
| 이 름 | GitHub | 역할 |
|---|---|---|
| [TL]배문성 | gitHub | -문서: 리드미, 와이어프레임 -기능: 인증 구현(JWT 토큰), 토큰 동시성 문제 개선, 친구기능 및 유저 검색 API 구현, 수신함 구현, DM 구현, 알림기능 구현 |
| 임강현 | gitHub | -문서: 시스템 구성도, 플로우차트 -기능: 프로필 업데이트 API 구현, 채팅 검색 API 구현, 메시지 비동기 처리, 조회 성능 최적화, CI/CD 구축, 무중단 배포 |
| 임창인 | gitHub | -문서: 발표자료 -기능: 채팅방 생성,초대,입장 구현, url 보안 강화 |
| 남지은 | gitHub | -문서: 기획서 -기능: 웹소켓을 통한 실시간 통신 구현, 깃허브 이벤트 메세지 제작, 채팅방 알림 구현 |
Swagger를 사용하여 API명세서를 제작
Swagger명세 개요 이미지
