Skip to content
@WithUS-ZB

WithUS-ZB

template

📌 With Me는 지역문화와 이벤트 및 모임 동행자를 찾는 커뮤니티 프로젝트입니다.

🔗 With Me 배포 사이트 🔗 With Me 소개 브로셔 🔗 프로젝트 시연 영상 🔗 프론트엔드 Github 보기 🔗 백엔드 Github 보기
* 현재 백엔드 서버는 중단되었습니다.

자영업자나 소상공인이 이벤트를 개최하여 홍보와 상업 시장을 지원할 수 있습니다.
사용자들은 주변에서 열리는 다양한 이벤트를 쉽게 찾고 모임을 개설하여 쉽게 접하여 즐기고 소통할 수 있는 기회를 제공합니다.
지역주민들과 관광객들을 대상으로 이벤트를 소개하고 참여할 수 있는 플랫폼을 통해 지역사회의 활성화와 지역경제의 성장에 도움을 줄 수 있습니다.

Jun-01-2024 03-42-32

🌞 UML

UML

회원 관리를 통해 신원 확인을 간편하게 하고, 사용자들은 모임 및 이벤트를 개설하여 공유할 수 있습니다.
실시간 채팅 기능을 통해 참여자들 간의 원활한 소통이 가능하며, 마이페이지에서 개인 설정과 모임 관리가 편리하게 이루어집니다.
또한, 알림 기능을 제공하여 개인의 일정을 놓치지 않도록 합니다.

Git Commit Convention

✨ Features: 새기능
🐛 Fix: 버그 수정
🚚 Move: 파일 이동 혹은 이름 변경 resources(files, paths, routes)
🔥Remove code or files: 삭제
📝 Add or Update documentation: 문서
💡Add or update comments: 주석
✏️ Fix typos : 오타 수정
✅ Test: 테스트
🔊 Add or Update logs: 로그 추가 또는 업데이트
➕ Add: 디펜던시 추가
➖ Remove: 디펜던시 제거
♻️ Refactor: 코드 리팩터링
🔀 Merge: 브랜치 병합
🗃️ Update: 데이터베이스 
⚡️Improve performance: 성능 향상

⭐ 아키텍처

아키텍처

⭐ 기술 스택

📚 Backend

분류 기술 활용
프로그래밍 언어 Java
빌드 도구 Gradle
프레임워크 Spring Boot
Spring Security 보안
WebSocket 채팅
SSE 알림
ORM JPA(Hibernate)
테스트 도구 JUnit5
Mockito
메시징 프로토콜 STOMP 채팅
인증/인가 OAuth2 로그인
JWT 로그인
nurigo 휴대폰 인증
컨테이너화 도구 Docker
데이터베이스 MySQL
H2
Redis 캐시
검색 엔진 Elasticsearch 검색
클라우드 서비스 EC2 서버
S3 파일 저장
Route 53 도메인 연결
Oracle Cloud CI/CD 서버
CI/CD Jenkins

📚 Frontend

분류 기술 활용
패키지 매니저 Yarn
프레임워크/라이브러리 Vite
React.ts
React Router
React Query
Axios
Zustand
호스팅 서비스 Vercel
모킹 라이브러리 MSW
스타일링 Tailwind CSS

⭐ 기능

기능 내용
✅ 인기 이벤트 및 모임
✅ 최신 지역축제
회원가입/로그인 ✅ 일반 회원가입
✅ 소셜로그인(카카오)
마이페이지 ✅ 회원 정보 변경
✅ 휴대폰 인증
✅ 멤버쉽 결제
✅ 내가 신청/관심등록한 목록
게시글 작성 ✅ 모집글 작성
상세보기 ✅ 모집 정보 조회
✅ 모임 신청 및 취소 기능
✅ 위치 지도 조회
✅ 댓글 기능
게시글 리스트 ✅ 전체/이벤트/모임 리스트 조회
✅ 전체/이벤트/모임 검색
✅ 좋아요 기능
이벤트/모임 관리 ✅ 개설한 게시글의 신청 현황 확인 및 관리
알림 ✅ 신청한 모임의 모집날 1일전 알림
부가기능 ✅ 다크모드
✅ 반응형

⭐ 디자인 패턴 적용한 사례

ParticipationService

ParticipationService

WebSocketInterceptor

WebSocketInterceptor.png

⭐ 트러블슈팅

Backend

순번 담당자 내용
1 박지은 Access-Control-Expose-Headers
2 박강락 Content-Type ‘application/octet-stream’ is not supported
3 임국희 CORS 정책에 의한 API 호출 불가 문제
4 박강락 docker desktop 엘라스틱 이미지 설치 후 동작안함
5 임국희 Entity 수정 후 INSERT문 실행이 되지 않는 문제
6 박강락 Entity를 DB에서 읽어데이터, 회원 Entity 조회를 DB에 불필요한 요청
7 박강락 Error creating bean with name 's3Config': Injection of autowired dependencies failed 에러
8 박강락 Error: listen EADDRINUSE: address already in use :::80
9 임국희 Mixed Content 에러에 의한 API 호출 불가 문제
10 박지은 Mockito cannot mock/spy because: final class
11 박강락 PuTTY로 EC2 인스턴스 접속 시도 시, No supported authentication methods available
12 박강락 There is already 'gatheringController' bean method 에러 발생
13 박강락 Unsupported Media Type, Content-Type 'application/octet-stream' is not supported
14 박지은 websocket postman으로 연결 안됨
15 박강락 yml 설정파일 케이스 오류
16 박지은 리다이렉션 횟수가 너무 많습니다.
17 임국희 서비스 로직에서 N+1문제 발생
18 임국희 스프링 시큐리티가 적용된 앱의 유닛 테스트
19 박강락 유효성검사 어노테이션 동작안함
20 임국희 젠킨스 서버가 주기적으로 정지되는 문제
21 박강락 클라이언트 String content 데이터 요청시 에러발생
22 박지은 현재 로그인 회원 정보 가져오기

Frontend

순번 담당자 내용
1 이수광 API 통신 에러
2 우승찬 CORS 오류
4 우승찬 MSW 설정
6 우승찬 vercel 배포
3 이수광 로컬 데이터 공유 오류
5 이수광 우당탕탕 KCP 결제 소동

⭐ ERD

ERD

⭐ CI/CD

CI/CD

🐥 멤버 및 프로젝트 소감

멤버 프로필 소감
BE 박강락 _ 든든한 팀원들이 있어서 프로젝트를 잘 마무리 할 수 있었습니다.

6주간 하루도 빠짐없이 모든 팀원이 노력 했기에 가능하다고 생각합니다.

모두 고생많으셨습니다!
BE 박지은 _ 프론트엔드 분들과 처음으로 협업하고 배포까지 진행하면서 생각지도 못 했던 부분에 문제가 발생하는 경우가 꽤 있었습니다.

문제가 발생하고 소통하여 해결하는 과정이 좋은 경험이 되었습니다.

팀원 분들 모두 친절하셔서 소통에 어려움이 없었던 것 같습니다.

모두 고생하셨고 취뽀하시길 바랍니다⭐
BE 임국희 _ 프로젝트 기간 동안 팀원 분들이 모두 성실하게 작업해주셔서 성공적으로 마칠 수 있었습니다.

팀원 여러분 모두 감사 드려요. 모두 좋은 곳에 취직 성공하시길 기원드립니다.
FE 우승찬 _ 처음 프로젝트를 하면서 백엔드 분들과 실제 통신을 하면서 많은 점을 배웠습니다.

프로젝트를 하면서 저에게 부족한 점을 많이 느끼고 앞으로 이 부족한 점을 더욱 공부해서 취업에 성공하고 싶습니다.

팀원 분들도 고생 많으셨고 모두 좋은 곳에 취직 하시길 바랍니다. 화이팅!
FE 이수광 _ 백엔드와 서버 통신을 여러 사람과 많이 해볼 수 있는 기회라서 배운게 많습니다.

진행하면서 저의 부족한 부분에 대한 아쉬움이 많아져 학습에 대한 갈망에 동기부여도 되었습니다.

첫 협업 팀 프로젝트라 많이 헤매고 어수선했지만 이를 경험으로 앞으로의 작업에서 설계 단계와 구조 분리 등 잘 몰랐던 부분에 대해서 많은 배움과 생각을 가지게 되었습니다.

함께 해준 팀원들 모두 감사합니다 !

Popular repositories Loading

  1. withme-be withme-be Public

    Java 2

  2. withme-fe withme-fe Public

    TypeScript 2

  3. withme withme Public

  4. .github .github Public

Repositories

Showing 4 of 4 repositories

Top languages

Loading…

Most used topics

Loading…