Skip to content

wyswhsl21/team4-final-project

 
 

Repository files navigation

💗 환승 시민2 🚆 💗

환승시민_섬네일_1 (1)

환승시민은 랜덤매칭 채팅 서비스 입니다.


프로젝트 기간 : 2023. 05. 01 ~ 2023. 06. 26

🧑👩‍🦰 서비스 소개

짧은 시간안에 이루어지는 인연, 인생은 타이밍, 옷깃도 스치면 인연 등등 한번쯤은 들어보셨을건데요, 앞에서 설명한 키워드처럼 바쁜현대인이 매일 이용하는 교통수단인 지하철을 통해서 다양한 사람을 만날 수 있는 기회를 제공해주면 어떨까 라는 취지로 시작하게 되었습니다. 요즘 지하철이나 다른 대중교통을 이용하면 다들 각자 핸드폰만 보고 주변 사람들을 잘 살피지않습니다. 이러한 개인주의 사회에 공동체 결속감을 강화시키고자 대면은 아니지만 주변 사람들에게 관심을 가질 수 있는 기회를 제공하고자합니다. 다른 사람들에게 관심을 가지며 다양한 생각, 가치관, 정보, 재미를 공유할 수 있는 기회가 될 것입니다. 최종적으로 지하철 출.퇴근, 혹은 이동하는 시간 동안 사람들에게 즐거움을 선사하는 것이 저희 팀의 목표입니다.🙋‍♀️🙋‍♂️

환승시민 이용해보기 Click!
환승시민2 이슈는 이렇게 관리했어요! Click!

💙❤ 어떻게 달라졌을까 ?!

  • 기존의 타고 있는 사람들 그리고 같은 칸에 있는 사람들끼리 매칭되는 방식에서 자동으로 입력되는 출발역과 본인이 지정할 수 있는 도착역 정보만 받아 경로가 같은 사람들끼리 일대일 로 매칭이 이루어지면서 기존의 열차번호 같이 사용자가 입력하기 어려운 정보를 뺏습니다.
  • 매끄러운 회원가입 절차! 기존의 환승시민은 한번에 정보를 받아 기입해야 하는 불편한 점들(ui ux)을 개선하고자 단계별로 나뉘어 진행 시키고 있습니다.
  • 재미요소 추가: 기존 환승시민은 상대방과 채팅외에는 추가적인 요소가 없어서 사용자들이 좀 더 재밌는 요소가 있었으면 좋겠다 라는 피드백을 받았었는데요, 이러한 부분들을 개선하고자 채팅방의 타이머, 챗봇, 상대방 프로필 정보 보기 등등 다양한 재미 요소를 추가했습니다.
  • 프로덕트의 완성도: 기존의 환승시민은 공지사항 , 이용가이드, 회원탈퇴 같은 기능들이 빠졌었는데요. 이러한 기능들을 추가 시키면서 좀 더 프로덕트의 완성도를 높히는데 신경 썼습니다. 💌


🕹 페이지 소개

회원가입 로그인 프로필 등록
회원가입 로그인 프로필등록
소셜 로그인 공지사항 이용방법
소셜로그인 공지사항 이용방법
매칭 - 실패 매칭 성공 테스트 봇 매칭
매칭 실패 매칭성공 테스트봇
상대방 나갈시 시간추가 회원탈퇴
상대방 나갈시 팝업 시간추가 회원탈퇴
대화요청 알람 받기 대화 수락하기
대화요청하기 알람 받기 대화수락하기

환승 시민 프로젝트 구성원

팀내 포지션 이름 깃허브
BE 안태환 https://github.com/nowhereim
FE 김재우 https://github.com/wyswhsl21
DE 박은지 https://twisty-study-b7e.notion.site/App-Re-Design-737f2518dffb457eadccddcf3cf69a0b


기술 스택

📁  Frameworkes & Libraries

ReactRecoilstyled-componentReact QueryHotjar


🔒 코드 컨벤션

💬 커밋 컨벤션

💬Commit Type and Description

커밋명 내용
feat 파일, 폴더, 새로운 기능 추가
fix 버그 수정
docs 제품 코드 수정 없음
style 코드 형식, 정렬, 주석 등의 변경
refactor 코드 리팩토링
test 테스트 코드 추가
chore 환경설정, 빌드 업무, 패키지 매니저 설정등..
hotfix 치명적이거나 급한 버그 수정
delete 사용하지 않는 변수, 파일 etc 삭제

폴더 구조

team4-final-project
 📦src
 ┣ 📂apis
 ┃ ┗ 📜Instance.jsx
 ┣ 📂Assets
 ┃ ┣ 📂AddInfo
 ┃ ┃ ┣ 📜Category.svg
 ┃ ┃ ┣ 📜NickName.svg
 ┃ ┃ ┗ 📜TextGender.svg
 ┃ ┣ 📂Chatting
 ┃ ┃ ┣ 📜ban.svg
 ┃ ┃ ┣ 📜chatbot.svg
 ┃ ┃ ┣ 📜chatprofile.svg
 ┃ ┃ ┣ 📜citizen.svg
 ┃ ┃ ┣ 📜Exit.svg
 ┃ ┃ ┣ 📜ImageForm.svg
 ┃ ┃ ┣ 📜LoadingIcon.svg
 ┃ ┃ ┣ 📜report.svg
 ┃ ┃ ┗ 📜trans.svg
 ┃ ┣ 📂ChattingModal
 ┃ ┃ ┣ 📜add.svg
 ┃ ┃ ┣ 📜close.svg
 ┃ ┃ ┣ 📜exit.svg
 ┃ ┃ ┗ 📜leave.svg
 ┃ ┣ 📂Checkbox
 ┃ ┃ ┗ 📜Vector.png
 ┃ ┣ 📂Convers
 ┃ ┃ ┣ 📜Convers.svg
 ┃ ┃ ┗ 📜How.svg
 ┃ ┣ 📂FooterHome
 ┃ ┃ ┣ 📜FooterHome.svg
 ┃ ┃ ┗ 📜FooterUser.svg
 ┃ ┣ 📂Gender
 ┃ ┃ ┣ 📜Female.svg
 ┃ ┃ ┣ 📜FemaleColor.svg
 ┃ ┃ ┣ 📜Male.svg
 ┃ ┃ ┗ 📜MaleColor.svg
 ┃ ┣ 📂Guide
 ┃ ┃ ┣ 📜chatting.svg
 ┃ ┃ ┣ 📜first.png
 ┃ ┃ ┣ 📜first.svg
 ┃ ┃ ┣ 📜firstImg.svg
 ┃ ┃ ┣ 📜second.png
 ┃ ┃ ┣ 📜second.svg
 ┃ ┃ ┣ 📜secondImg.svg
 ┃ ┃ ┣ 📜third.png
 ┃ ┃ ┣ 📜third.svg
 ┃ ┃ ┗ 📜thirdImg.svg
 ┃ ┣ 📂HeaderItem
 ┃ ┃ ┗ 📜HeaderPointer.svg
 ┃ ┣ 📂History
 ┃ ┃ ┣ 📜circle.svg
 ┃ ┃ ┣ 📜down.svg
 ┃ ┃ ┣ 📜normaldown.svg
 ┃ ┃ ┣ 📜normalup.svg
 ┃ ┃ ┗ 📜up.svg
 ┃ ┣ 📂Loading
 ┃ ┃ ┣ 📜logo_gif 1.gif
 ┃ ┃ ┗ 📜text.svg
 ┃ ┣ 📂Logout
 ┃ ┃ ┣ 📜check.svg
 ┃ ┃ ┗ 📜selecticon.svg
 ┃ ┣ 📂Main
 ┃ ┃ ┣ 📜guidebutton.svg
 ┃ ┃ ┣ 📜hand.svg
 ┃ ┃ ┣ 📜handsign.png
 ┃ ┃ ┣ 📜line.svg
 ┃ ┃ ┣ 📜normaldown.png
 ┃ ┃ ┣ 📜normalup.png
 ┃ ┃ ┣ 📜revert.svg
 ┃ ┃ ┣ 📜setting.svg
 ┃ ┃ ┣ 📜station.svg
 ┃ ┃ ┣ 📜transferlogo.svg
 ┃ ┃ ┗ 📜write.svg
 ┃ ┣ 📂Matching
 ┃ ┃ ┣ 📜bot.svg
 ┃ ┃ ┣ 📜fail.svg
 ┃ ┃ ┣ 📜home.svg
 ┃ ┃ ┣ 📜matching.gif
 ┃ ┃ ┣ 📜nomatch.svg
 ┃ ┃ ┣ 📜progressbar.svg
 ┃ ┃ ┗ 📜recycle.svg
 ┃ ┣ 📂Modal
 ┃ ┃ ┣ 📜block.svg
 ┃ ┃ ┣ 📜left.svg
 ┃ ┃ ┣ 📜right.svg
 ┃ ┃ ┗ 📜status.svg
 ┃ ┣ 📂Mypage
 ┃ ┃ ┗ 📜arrow.svg
 ┃ ┣ 📂NameOk.svg
 ┃ ┃ ┗ 📜NameOk.svg
 ┃ ┣ 📂NewFooterHome
 ┃ ┃ ┣ 📜Chatting.svg
 ┃ ┃ ┣ 📜Home.svg
 ┃ ┃ ┗ 📜Profile.svg
 ┃ ┣ 📂normalImg
 ┃ ┃ ┗ 📜defaultImg.svg
 ┃ ┣ 📂SetProfile
 ┃ ┃ ┣ 📜avatar.svg
 ┃ ┃ ┣ 📜beforebutton.svg
 ┃ ┃ ┣ 📜camera.svg
 ┃ ┃ ┣ 📜centerprogress.svg
 ┃ ┃ ┣ 📜close.svg
 ┃ ┃ ┣ 📜hello.gif
 ┃ ┃ ┣ 📜nextbutton.svg
 ┃ ┃ ┣ 📜nextbutton_disable.svg
 ┃ ┃ ┣ 📜nextprogress.svg
 ┃ ┃ ┣ 📜pendingbutton.svg
 ┃ ┃ ┣ 📜profile.svg
 ┃ ┃ ┣ 📜progress.svg
 ┃ ┃ ┗ 📜startbutton.svg
 ┃ ┣ 📂SignIn
 ┃ ┃ ┣ 📜signinText.svg
 ┃ ┃ ┗ 📜SignMsg.svg
 ┃ ┣ 📂SignUp
 ┃ ┃ ┣ 📜DefaultImg.svg
 ┃ ┃ ┣ 📜PhoneAuth.svg
 ┃ ┃ ┣ 📜SettingInit.svg
 ┃ ┃ ┗ 📜SignCheck.svg
 ┃ ┣ 📂Slick
 ┃ ┃ ┣ 📜playstore-icon.png
 ┃ ┃ ┗ 📜slick.svg
 ┃ ┣ 📂Station
 ┃ ┃ ┣ 📜1.svg
 ┃ ┃ ┣ 📜2.svg
 ┃ ┃ ┣ 📜3.svg
 ┃ ┃ ┣ 📜4.svg
 ┃ ┃ ┣ 📜5.svg
 ┃ ┃ ┣ 📜6.svg
 ┃ ┃ ┣ 📜7.svg
 ┃ ┃ ┣ 📜8.svg
 ┃ ┃ ┣ 📜9.svg
 ┃ ┃ ┣ 📜headericon.svg
 ┃ ┃ ┣ 📜remove.svg
 ┃ ┃ ┣ 📜result.svg
 ┃ ┃ ┣ 📜search.svg
 ┃ ┃ ┣ 📜경강선.svg
 ┃ ┃ ┣ 📜경의중앙.svg
 ┃ ┃ ┣ 📜경춘선.svg
 ┃ ┃ ┣ 📜공항철도.svg
 ┃ ┃ ┣ 📜김포골드.svg
 ┃ ┃ ┣ 📜서해선.svg
 ┃ ┃ ┣ 📜수인분당.svg
 ┃ ┃ ┣ 📜신림선.svg
 ┃ ┃ ┣ 📜신분당.svg
 ┃ ┃ ┣ 📜용인경전철.svg
 ┃ ┃ ┣ 📜우이신설.svg
 ┃ ┃ ┣ 📜의정부경전철.svg
 ┃ ┃ ┣ 📜인천1호선.svg
 ┃ ┃ ┣ 📜인천2호선.svg
 ┃ ┃ ┗ 📜자기부상.svg
 ┃ ┣ 📂SubSign
 ┃ ┃ ┣ 📜NormInfo.svg
 ┃ ┃ ┣ 📜Password.svg
 ┃ ┃ ┣ 📜PasswordConfirm.svg
 ┃ ┃ ┗ 📜UserId.svg
 ┃ ┣ 📜AgreeIcon.svg
 ┃ ┣ 📜CancelBtn.svg
 ┃ ┣ 📜Cancle.svg
 ┃ ┣ 📜CancleBtn.svg
 ┃ ┣ 📜data_kakao.svg
 ┃ ┣ 📜data_naver.svg
 ┃ ┣ 📜Email.svg
 ┃ ┣ 📜FirstLogo.svg
 ┃ ┣ 📜Googlelogo.svg
 ┃ ┣ 📜GuideIcon.svg
 ┃ ┣ 📜GuideIcontwo.svg
 ┃ ┣ 📜InfoReq.svg
 ┃ ┣ 📜Kakaologo.svg
 ┃ ┣ 📜Loading.svg
 ┃ ┣ 📜Logo.svg
 ┃ ┣ 📜Naverlogo.svg
 ┃ ┣ 📜NextBtn.svg
 ┃ ┣ 📜Ok.svg
 ┃ ┣ 📜OkBtn.svg
 ┃ ┣ 📜SmallCancel.svg
 ┃ ┗ 📜SubwayIcon.svg
 ┣ 📂Components
 ┃ ┣ 📂Announcement
 ┃ ┃ ┣ 📜AnnounceDetail.jsx
 ┃ ┃ ┣ 📜Announcement.jsx
 ┃ ┃ ┗ 📜AnnounceWrite.jsx
 ┃ ┣ 📂Chatting
 ┃ ┃ ┗ 📜Chatting.jsx
 ┃ ┣ 📂Guide
 ┃ ┃ ┗ 📜Guide.jsx
 ┃ ┣ 📂Header
 ┃ ┃ ┣ 📜Header.jsx
 ┃ ┃ ┣ 📜MainHeader.jsx
 ┃ ┃ ┗ 📜MypageHeader.jsx
 ┃ ┣ 📂Headers
 ┃ ┃ ┗ 📜Headers01.jsx
 ┃ ┣ 📂HomeMenu
 ┃ ┃ ┣ 📜ChattingHome.jsx
 ┃ ┃ ┣ 📜HomeMenu.jsx
 ┃ ┃ ┗ 📜SubwayHome.jsx
 ┃ ┣ 📂Kakao
 ┃ ┃ ┗ 📜Kakao.jsx
 ┃ ┣ 📂Loading
 ┃ ┃ ┗ 📜Loading.jsx
 ┃ ┣ 📂Login
 ┃ ┃ ┣ 📜Auth.jsx
 ┃ ┃ ┣ 📜Complete.jsx
 ┃ ┃ ┣ 📜EmailLogin.jsx
 ┃ ┃ ┗ 📜Resetpw.jsx
 ┃ ┣ 📂Logout
 ┃ ┃ ┗ 📜Logout.jsx
 ┃ ┣ 📂Main
 ┃ ┃ ┣ 📜SearchBar.jsx
 ┃ ┃ ┣ 📜StartSelect.jsx
 ┃ ┃ ┣ 📜StationSearch.jsx
 ┃ ┃ ┣ 📜StationSelect.jsx
 ┃ ┃ ┗ 📜Subway.jsx
 ┃ ┣ 📂Modal
 ┃ ┃ ┣ 📜ChattingModal.jsx
 ┃ ┃ ┣ 📜CounterProfileModal.jsx
 ┃ ┃ ┗ 📜HelpModal.jsx
 ┃ ┣ 📂Profile
 ┃ ┃ ┣ 📜Mypage.jsx
 ┃ ┃ ┣ 📜MypageHeader.jsx
 ┃ ┃ ┣ 📜NameChange.jsx
 ┃ ┃ ┣ 📜PasswordChange.jsx
 ┃ ┃ ┣ 📜ProfileChange.jsx
 ┃ ┃ ┗ 📜ProfilePic.jsx
 ┃ ┣ 📂Report
 ┃ ┃ ┗ 📜Report.jsx
 ┃ ┣ 📂Signup
 ┃ ┃ ┣ 📜AgetSet.jsx
 ┃ ┃ ┣ 📜Agree.jsx
 ┃ ┃ ┣ 📜GenderSet.jsx
 ┃ ┃ ┣ 📜PickProfile.jsx
 ┃ ┃ ┣ 📜ProfileSet.jsx
 ┃ ┃ ┣ 📜Signup.jsx
 ┃ ┃ ┗ 📜SocialAgree.jsx
 ┃ ┣ 📂Slick
 ┃ ┃ ┣ 📜ProfileSlick.jsx
 ┃ ┃ ┗ 📜Slick.jsx
 ┃ ┗ 📂Timer
 ┃ ┃ ┣ 📜AuthTimer.jsx
 ┃ ┃ ┗ 📜Timer.jsx
 ┣ 📂Constant
 ┃ ┗ 📜chatbot.jsx
 ┣ 📂Element
 ┃ ┣ 📜Agree.jsx
 ┃ ┣ 📜ChattingIcon.jsx
 ┃ ┣ 📜ExitIcon.jsx
 ┃ ┣ 📜GuideAlert.jsx
 ┃ ┣ 📜GuideExit.jsx
 ┃ ┣ 📜GuideIcon.jsx
 ┃ ┣ 📜HeaderIcon.jsx
 ┃ ┣ 📜HeaderIcon2.jsx
 ┃ ┣ 📜ImageFormIcon.jsx
 ┃ ┣ 📜LoadingIcon.jsx
 ┃ ┣ 📜SubwayIcon.jsx
 ┃ ┗ 📜Subwaymap.jsx
 ┣ 📂Fonts
 ┃ ┗ 📜Font.css
 ┣ 📂MyTools
 ┃ ┣ 📂Hooks
 ┃ ┃ ┣ 📜MyCookie.js
 ┃ ┃ ┣ 📜UseInput.js
 ┃ ┃ ┣ 📜UseInputOrigin.js
 ┃ ┃ ┗ 📜useIntersection.jsx
 ┃ ┣ 📂quries
 ┃ ┃ ┣ 📜station.js
 ┃ ┃ ┗ 📜useInfinite.js
 ┃ ┗ 📜Accordion.js
 ┣ 📂Pages
 ┃ ┣ 📂Announcement
 ┃ ┃ ┣ 📜AnnounceDetailPage.jsx
 ┃ ┃ ┣ 📜AnnouncementPage.jsx
 ┃ ┃ ┗ 📜AnnounceWritePage.jsx
 ┃ ┣ 📂Guide
 ┃ ┃ ┗ 📜GuidePage.jsx
 ┃ ┣ 📂Login
 ┃ ┃ ┣ 📜AuthPage.jsx
 ┃ ┃ ┣ 📜CompletePage.jsx
 ┃ ┃ ┣ 📜EmailPage.jsx
 ┃ ┃ ┗ 📜ResetPage.jsx
 ┃ ┣ 📂Logout
 ┃ ┃ ┗ 📜LogoutPage.jsx
 ┃ ┣ 📂Main
 ┃ ┃ ┣ 📜StartSelectPage.jsx
 ┃ ┃ ┣ 📜StationSearchPage.jsx
 ┃ ┃ ┣ 📜StationSelectPage.jsx
 ┃ ┃ ┗ 📜SubwayPage.jsx
 ┃ ┣ 📂Matching
 ┃ ┃ ┣ 📜FailPage.jsx
 ┃ ┃ ┗ 📜MatchingPage.jsx
 ┃ ┣ 📂Mypage
 ┃ ┃ ┣ 📜MypagePage.jsx
 ┃ ┃ ┣ 📜NamePage.jsx
 ┃ ┃ ┣ 📜PasswordPage.jsx
 ┃ ┃ ┗ 📜ProfilePage.jsx
 ┃ ┣ 📂Report
 ┃ ┃ ┗ 📜ReportPage.jsx
 ┃ ┣ 📂Signup
 ┃ ┃ ┣ 📜AgreePage.jsx
 ┃ ┃ ┣ 📜PickProfilePage.jsx
 ┃ ┃ ┣ 📜SetAgePage.jsx
 ┃ ┃ ┣ 📜SetGenderPage.jsx
 ┃ ┃ ┣ 📜SetProfilePage.jsx
 ┃ ┃ ┣ 📜SignupPage.jsx
 ┃ ┃ ┗ 📜SocialAgreePage.jsx
 ┃ ┣ 📜ChattingPage.jsx
 ┃ ┣ 📜ConversPage.jsx
 ┃ ┣ 📜GlobalStyle.jsx
 ┃ ┣ 📜GoogleLogin.jsx
 ┃ ┣ 📜KakaoLogin.jsx
 ┃ ┣ 📜Login.jsx
 ┃ ┣ 📜NaverLogin.jsx
 ┃ ┗ 📜SubSign.jsx
 ┣ 📂Recoil
 ┃ ┣ 📂Modules
 ┃ ┃ ┗ 📜refreshToken.jsx
 ┃ ┗ 📜userList.jsx
 ┣ 📂Shared
 ┃ ┗ 📜Router.js
 ┣ 📜App.js
 ┣ 📜App.test.js
 ┣ 📜index.css
 ┣ 📜index.js
 ┣ 📜logo.svg
 ┣ 📜reportWebVitals.js
 ┗ 📜setupTests.js
       

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 98.5%
  • HTML 1.2%
  • CSS 0.3%