Gukss / planit_upstream_mirror

πŸͺμ‹€μ‹œκ°„ μ§€λ„κ³΅μœ , 화상톡화 μ—¬ν–‰κ³„νš ν”Œλž«νΌ (PLAN!T)_SSAFY_곡톡_ν”„λ‘œμ νŠΈ

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Group2

πŸ“–λͺ©μ°¨



πŸ“‘ 주제

μΉœκ΅¬μ™€ ν•¨κ»˜ν•˜λŠ” μ—¬ν–‰κ³„νš ν”Œλž«νΌ



πŸŽ‰ ν”„λ‘œμ νŠΈ μ†Œκ°œ

문제

μ½”λ‘œλ‚˜19κ°€ 엔데믹에 μ ‘μ–΄λ“€μ–΄ 여행을 κ°€λ €λŠ” μ‚¬λžŒμ˜ μˆ˜κ°€ μ¦κ°€ν•˜κ³  μžˆλ‹€. μ—¬ν–‰ κ³„νšμ„ 지 λ•Œ μ°Έμ—¬ν•˜μ—¬ μ˜κ²¬μ„ μ œμ‹œν•˜κ³  μ‹Άμ§€λ§Œ μ‹œκ°„μ , 곡간적 μ—¬μœ κ°€ λ˜μ§€μ•Šμ•„ μ°Έμ—¬ν•  수 μ—†λŠ” μ‚¬λžŒκ³Ό μ—¬ν–‰ λ‚ μ§œλ§Œ μ •ν•˜κ³  μ„ΈλΆ€κ³„νšμ€ 아무도 μž‘μ„±ν•˜μ§€ μ•Šμ•„ 혼자 μ—¬ν–‰κ³„νšμ„ μž‘μ„±ν•˜λŠ” μ‚¬λžŒμ˜ λ¬Έμ œκ°€ μžˆλ‹€. 또 μ—¬ν–‰ κ³„νšμ„ μž‘μ„±ν•  λ•Œ μ—¬λŸ¬κ°€μ§€ μ„œλΉ„μŠ€λ₯Ό μ‚¬μš©ν•΄μ•Όν•˜λŠ” λ²ˆκ±°λ‘œμ›€μ΄ μžˆλ‹€.

ν•΄κ²°λ°©μ•ˆ

  1. 같은 곡간에 μžˆμ§€ μ•Šμ•„λ„ 화상톡화λ₯Ό ν•˜λ©° ν•¨κ»˜ μ—¬ν–‰ κ³„νšμ„ μž‘μ„±ν•  수 μžˆλ‹€.
  2. 일정 κ³„νš 과정을 μ‹€μ‹œκ°„μœΌλ‘œ κ³΅μœ ν•¨μœΌλ‘œ μ°Έμ—¬μžλ“€μ˜ λ°˜μ‘μ„ 확인할 수 μžˆλ‹€.
  3. μ—¬ν–‰ κ³„νšμ„ μž‘μ„±ν•  λ•Œ μ‚¬μš©ν•˜λŠ” μ—¬λŸ¬ μ„œλΉ„μŠ€μ˜ κΈ°λŠ₯을 λͺ¨μ•„ ν•œ λ²ˆμ— μ‚¬μš©κ°€λŠ₯ν•˜κ²Œ ν•œλ‹€.


πŸ”‘ μ£Όμš” κΈ°λŠ₯

  1. 같은 방에 μ†ν•œ μ‚¬λžŒλ“€κ³Ό 화상톡화 및 μ±„νŒ…
  2. ν‚€μ›Œλ“œλ‘œ μ—¬ν–‰ μž₯μ†Œ 검색
  3. μΉ΄ν…Œκ³ λ¦¬λ³„ μ—¬ν–‰ μž₯μ†Œ 검색
  4. μ—¬ν–‰ μž₯μ†Œλ₯Ό 지도에 ν‘œμ‹œν•˜λŠ” 마컀λ₯Ό μ‹€μ‹œκ°„ 곡유
  5. 같은 방에 μ†ν•œ μ‚¬λžŒλ“€κ³Ό 일정 κ³„νš κ³Όμ • μ‹€μ‹œκ°„ 곡유
  6. μž‘μ„±ν•œ 일정을 μ΄λ―Έμ§€λ‘œ 곡유
  7. μ˜μ‚¬ 결정을 μœ„ν•œ νˆ¬ν‘œ


πŸ–₯ μ„œλΉ„μŠ€ ν™”λ©΄

일정검색 μ±„νŒ…νˆ¬ν‘œ 일정변경



🎨 ν™”λ©΄ μ„€κ³„μ„œ

둜그인

signIn


νšŒμ›κ°€μž…

signUp


λ§ˆμ΄νŽ˜μ΄μ§€

myPage


일정

schedule


일정 λ§Œλ“€κΈ°

createRoom1

createRoom2


μ—¬ν–‰μž₯μ†Œ 검색

main1_search


μž₯μ†Œ μΆ”κ°€

main3_save


일정에 μΆ”κ°€

main2_confirm


μ±„νŒ…

chatting


νˆ¬ν‘œ

vote



βš™ 아킀텍쳐

Ver_2 0_아킀텍쳐



πŸ“ ERD

PLANIT (1)



πŸ›  μ£Όμš” 기술

λ°±

  • openJDK 8
  • IntelliJ IDE
  • Springboot 2.7.7
  • Spring Data JPA
  • Spring Security
  • Spring Web
  • WebSocket: Stomp
  • MySql: 5.7.30

ν”„λ‘ νŠΈ

  • VsCode
  • Node.js 16.19.0
  • React 18.2.0
  • SASS


πŸ›  ν˜‘μ—… 툴

  • Git
  • Notion
  • Jira
  • Discord
  • Figma


πŸ›  ν˜‘μ—… ν™˜κ²½

Git

  • μ½”λ“œ 버전을 관리

Notion

  • νšŒμ˜κ°€ μžˆμ„ λ•Œ λ§ˆλ‹€ νšŒμ˜λ‘μ„ 기둝해 보관
  • 기술 곡뢀 μ‹œ λ¬Έμ„œλ₯Ό μž‘μ„±ν•΄ νŒ€μ›κ³Ό 곡유
  • 같은 버그 λ°œμƒ μ‹œ λΉ λ₯Έ 해결을 μœ„ν•΄ 디버깅 내역을 기둝
  • κΈ°λŠ₯λͺ…μ„Έμ„œ, ERD, REST API λ“± λͺ¨λ‘κ°€ κ³΅μœ ν•΄μ•Όν•˜λŠ” λ¬Έμ„œ 관리
  • μ»¨λ²€μ…˜ 정리
  • κ°„νŠΈμ°¨νŠΈ 관리

Jira

  • 맀주 λͺ©ν‘œλŸ‰μ„ μ„€μ •ν•΄ Sprint 진행
  • μ—…λ¬΄μ˜ ν• λ‹ΉλŸ‰μ„ μ •ν•΄ Story Pointλ₯Ό μ„€μ •ν•˜κ³ , In-Progress β†’ Done 순으둜 μž‘μ—…

Discord

  • ν™”λ©΄ 곡유둜 νŒ€μ›κ°„ μ›ν™œν•œ λΉ„λŒ€λ©΄ μ†Œν†΅

Figma

  • ν™”λ©΄ μ„€κ³„μ„œ μž‘μ„±


πŸ“„ μ‹œμ—° μ‹œλ‚˜λ¦¬μ˜€

일정 λ§Œλ“€κΈ°

μΌμ •λ§Œλ“€κΈ°1 μΌμ •λ§Œλ“€κΈ°2 μΌμ •λ§Œλ“€κΈ°3 μΌμ •λ§Œλ“€κΈ°4

  1. ν™”λ©΄ 우츑 상단 β€œμΌμ • λ§Œλ“€κΈ°β€ λ²„νŠΌ λ˜λŠ” 메인 νŽ˜μ΄μ§€μ˜ β€œλ°”λ‘œ μ‹œμž‘ν•˜κΈ°β€ λ²„νŠΌμ„ ν΄λ¦­ν•œλ‹€.
  2. μ—¬ν–‰μΌμžλ₯Ό μ„ νƒν•˜κ³  μΌμ •μ œλͺ©μ„ μž…λ ₯ν•œλ‹€.
  3. 둜고 λ°‘μ˜ ν† κΈ€ λ²„νŠΌμ„ 클릭해 μΉœκ΅¬μ΄ˆλŒ€ 창으둜 μ „ν™˜ν•œλ‹€.
  4. 친ꡬ의 아이디λ₯Ό μž…λ ₯ν•œλ‹€.
  5. 좜λ ₯λ˜λŠ” 친ꡬ의 계정 μ˜†μ˜ β€œ+” λ²„νŠΌμ„ 클릭해 일정을 생성할 λ•Œ 친ꡬλ₯Ό μ΄ˆλŒ€ν•  수 μžˆλ‹€.
  6. ν™”λ©΄ ν•˜λ‹¨μ˜ β€œλ°© μƒμ„±ν•˜κΈ°β€ λ²„νŠΌμ„ 클릭해 일정을 μƒμ„±ν•˜κ³  일정 κ³„νš ν™”λ©΄μœΌλ‘œ μ „ν™˜λœλ‹€.

ν‚€μ›Œλ“œλ‘œ μ—¬ν–‰ μž₯μ†Œ 검색 ν›„ "μž₯μ†Œ"에 μΆ”κ°€

일정검색1 일정검색2 일정검색3

  1. μ™Όμͺ½ 메뉴 λ°”μ—μ„œ β€œκ²€μƒ‰β€λ²„νŠΌμ„ 클릭해 검색할 수 μžˆλ‹€.
  2. 검색어λ₯Ό μž…λ ₯ν•˜κ³  β€œEnter”λ₯Ό ν΄λ¦­ν•˜λ©΄ μ—°κ΄€λœ μž₯μ†Œκ°€ μΉ΄λ“œ ν˜•μ‹κ³Ό 지도에 마컀둜 좜λ ₯λœλ‹€.
    1. μž₯μ†Œ μΉ΄λ“œλ₯Ό ν΄λ¦­ν•˜λ©΄ ν•΄λ‹Ή μž₯μ†Œμ˜ μœ„μΉ˜λ‘œ 지도가 μ΄λ™ν•œλ‹€.
    2. μž₯μ†Œ μΉ΄λ“œμ˜ β€œκ°€κ²Œ 정보 ν™•μΈν•˜κΈ°β€ λ²„νŠΌμ„ λˆ„λ₯΄λ©΄ κ°€κ²Œ 정보λ₯Ό 확인할 수 μžˆλ‹€.
  3. μž₯μ†Œ μΉ΄λ“œμ˜ 였λ₯Έμͺ½ μœ„μ˜ β€œ+” λ²„νŠΌμ„ ν΄λ¦­ν•˜κ±°λ‚˜ 마컀λ₯Ό ν΄λ¦­ν•œ ν›„ β€œμž₯μ†ŒμΆ”κ°€β€ λ²„νŠΌμ„ 클릭해 μž₯μ†Œλ₯Ό μΆ”κ°€ν•  수 μžˆλ‹€.
  4. μΆ”κ°€λœ μž₯μ†ŒλŠ” μ™Όμͺ½ 메뉴 λ°”μ—μ„œ β€œμž₯μ†Œβ€ λ²„νŠΌμ„ 클릭해 확인 ν•  수 μžˆλ‹€.
  5. λ³€κ²½λœ 사항은 μ°Έμ—¬μžλ“€μ—κ²Œ λͺ¨λ‘ μ‹€μ‹œκ°„ κ³΅μœ λœλ‹€.

μΉ΄ν…Œκ³ λ¦¬λ³„ μ—¬ν–‰ μž₯μ†Œ 검색 ν›„ "μž₯μ†Œ"에 μΆ”κ°€

일정검색4_μΉ΄ν…Œκ³ λ¦¬

  1. 지도 였λ₯Έμͺ½ μƒλ‹¨μ˜ μΉ΄ν…Œκ³ λ¦¬λ₯Ό ν΄λ¦­ν•˜λ©΄ ν˜„μž¬ μ§€λ„μ—μ„œ μΉ΄ν…Œκ³ λ¦¬μ— ν•΄λ‹Ήν•˜λŠ” μž₯μ†Œκ°€ 마컀둜 좜λ ₯λœλ‹€.
  2. μž₯μ†Œ μΉ΄λ“œμ˜ 였λ₯Έμͺ½ μœ„μ˜ β€œ+” λ²„νŠΌμ„ ν΄λ¦­ν•˜κ±°λ‚˜ 마컀λ₯Ό ν΄λ¦­ν•œ ν›„ β€œμž₯μ†ŒμΆ”κ°€β€ λ²„νŠΌμ„ 클릭해 μž₯μ†Œλ₯Ό μΆ”κ°€ν•  수 μžˆλ‹€.
  3. μΆ”κ°€λœ μž₯μ†ŒλŠ” μ™Όμͺ½ 메뉴 λ°”μ—μ„œ β€œμž₯μ†Œβ€ λ²„νŠΌμ„ 클릭해 확인 ν•  수 μžˆλ‹€.
  4. λ³€κ²½λœ 사항은 μ°Έμ—¬μžλ“€μ—κ²Œ λͺ¨λ‘ μ‹€μ‹œκ°„ κ³΅μœ λœλ‹€.

일정에 μΆ”κ°€ν•˜κΈ°

일정좔가1 일정좔가2

  1. μ™Όμͺ½ 메뉴 λ°”μ—μ„œ β€œμž₯μ†Œβ€ λ²„νŠΌμ„ 클릭해 ν˜„μž¬ λ‹΄κΈ΄ μž₯μ†Œλ₯Ό 확인할 수 μžˆλ‹€.
    1. μž₯μ†ŒλŠ” μΉ΄ν…Œκ³ λ¦¬ λ³„λ‘œ λΆ„λ¦¬λ˜μ–΄ μžˆλ‹€.
  2. λ‹΄κΈ΄ μž₯μ†Œ νƒœκ·Έμ˜ 색깔 뢀뢄을 ν΄λ¦­ν•˜λ©΄ 지도가 ν•΄λ‹Ήν•˜λŠ” μž₯μ†Œ μœ„μΉ˜λ‘œ μ΄λ™ν•œλ‹€.
  3. λ‹΄κΈ΄ μž₯μ†Œ νƒœκ·Έμ˜ 이름 뢀뢄을 ν΄λ¦­ν•˜λ©΄ ν•΄λ‹Ή μž₯μ†Œκ°€ 일정에 μΆ”κ°€λœλ‹€.
  4. λ³€κ²½λœ 사항은 μ°Έμ—¬μžλ“€μ—κ²Œ λͺ¨λ‘ μ‹€μ‹œκ°„ κ³΅μœ λœλ‹€.

일정 μ‘°μ •ν•˜κΈ°

일정쑰정1 일정쑰정2

  1. μΆ”κ°€λœ 일정을 μ›ν•˜λŠ” λ‚ μ§œ λ°•μŠ€λ‘œ λ“œλž˜κ·Έν•΄μ„œ 일정을 μ‘°μ •ν•  수 μžˆλ‹€.
  2. λ³€κ²½λœ 사항은 μ°Έμ—¬μžλ“€μ—κ²Œ λͺ¨λ‘ μ‹€μ‹œκ°„ κ³΅μœ λœλ‹€.

일정 μ΄λ―Έμ§€λ‘œ μΆ”μΆœν•˜κΈ°

일정내보내기

  1. μ™Όμͺ½ 메뉴 λ°”μ˜ β€œμΌμ •β€ μ—μ„œλ§Œ μ΄λ―Έμ§€λ‘œ μΆ”μΆœμ΄ κ°€λŠ₯ν•˜λ‹€.
  2. μ™Όμͺ½ 메뉴 λ°”μ˜ 였λ₯Έμͺ½ 상단 β€œκ³΅μœ ν•˜κΈ°β€ λ²„νŠΌμ„ 눌러 μ΄λ―Έμ§€λ‘œ μΆ”μΆœν•œλ‹€.

νˆ¬ν‘œ

νˆ¬ν‘œ1 νˆ¬ν‘œ2

  1. μ™Όμͺ½ 메뉴 λ°”μ˜ β€œνˆ¬ν‘œβ€ λ²„νŠΌμ„ ν΄λ¦­ν•œλ‹€.
  2. β€œνˆ¬ν‘œ 내역” 글씨 μ˜†μ˜ β€œ+” λ²„νŠΌμ„ 눌러 νˆ¬ν‘œλ₯Ό 생성할 수 μžˆλ‹€.
  3. νˆ¬ν‘œ 제λͺ©κ³Ό ν•­λͺ©μ„ μž…λ ₯ν•˜κ³  β€œOK” λ²„νŠΌμ„ 눌러 νˆ¬ν‘œλ₯Ό 생성할 수 μžˆλ‹€.
  4. ν•­λͺ©μ„ μ„ νƒν•˜κ³  β€œνˆ¬ν‘œν•˜κΈ°β€ λ²„νŠΌμ„ ν΄λ¦­ν•˜μ—¬ νˆ¬ν‘œλ₯Ό ν•  수 μžˆλ‹€.

μ±„νŒ…

μ±„νŒ…

  1. μ°Έμ—¬μžλ“€κ³Ό μ±„νŒ…μ„ ν•  수 μžˆλ‹€.

μ €μž₯

  1. ν™”λ©΄ 상단 κ°€μš΄λ° β€œμ €μž₯” λ²„νŠΌμ„ 클릭해 μž‘μ—…ν•œ 상황을 μ €μž₯ν•  수 μžˆλ‹€.

진행 쀑인 μ—¬ν–‰ 일정에 μž…μž₯ν•˜κΈ°

μ§„ν–‰μ€‘μΈμΌμ •μž…μž₯

  1. 메인 νŽ˜μ΄μ§€μ—μ„œ 였λ₯Έμͺ½ μƒλ‹¨μ˜ ν”„λ‘œν•„μ„ λˆ„λ₯΄λ©΄ λ§ˆμ΄νŽ˜μ΄μ§€λ‘œ μ΄λ™ν•œλ‹€.
  2. β€œμ§„ν–‰ 쀑인 μ—¬ν–‰ 일정” μ—μ„œ 일정 μΉ΄λ“œμ˜ β€œμž…μž₯” λ²„νŠΌμ„ λˆ„λ₯΄λ©΄ 진행 쀑인 μ—¬ν–‰ 일정에 μž…μž₯ν•œλ‹€.

νšŒμ›κ°€μž…

νšŒμ›κ°€μž…1 νšŒμ›κ°€μž…2 νšŒμ›κ°€μž…3

  1. 아이디λ₯Ό μž…λ ₯ν•˜κ³  β€œν™•μΈβ€ λ²„νŠΌμ„ 눌러 아이디 쀑볡 체크λ₯Ό ν•œλ‹€.
  2. λ‚˜λ¨Έμ§€ μž…λ ₯ 사항을 λͺ¨λ‘ μž…λ ₯ν•˜κ³  κ°€μž…ν•˜κΈ° λ²„νŠΌμ„ λˆ„λ₯΄λ©΄ κ°€μž…μ΄ μ™„λ£Œλœλ‹€.

둜그인

둜그인

  1. 아이디와 λΉ„λ°€λ²ˆν˜Έλ₯Ό μž…λ ₯ν•˜κ³  β€œλ‘œκ·ΈμΈβ€ λ²„νŠΌμ„ λˆ„λ₯΄λ©΄ 둜그인이 μ™„λ£Œλœλ‹€.


πŸ—“ ν”„λ‘œμ νŠΈ 진행 κΈ°κ°„

2023.01.03 ~ 2023.02.17 (μ•½ 7μ£Ό)



πŸ’Ύ ν¬νŒ… 맀뉴얼

포트 μœ ν˜• ν”„λ‘œκ·Έλž¨ μ‚¬μš©ν¬νŠΈλ‚΄μš©
22 TCP SSH Ubuntu 접속을 μœ„ν•΄
80 TCP HTTP HTTP κΈ°λ³Έ Port
443 TCP HTTPS HTTPS κΈ°λ³Έ Port
3000 TCP DOCKER, REACT planit_front_container의 react port
3478 TCP/UDP DOCKER, OpenVidu ν΄λΌμ΄μ–ΈνŠΈ IP 확인을 μœ„ν•΄ STUN/TURN μ„œλ²„μ—μ„œ μ‚¬μš©
8080 TCP DOCKER, Spring planit_back_container의 Spring Port
8443 TCP DOCKER, OpenVidu OpenVidu Client-side
9090 TCP DOCKER, Jenkins Jenkins Port(8080 β†’ 9090)
9091 TCP DOCKER, Jenkins SSL 인증 Jenkins(9090 β†’ 9091)
40000:57000 TCP/UDP DOCKER, OpenVidu Kurento media Serverμ—μ„œ λ―Έλ””μ–΄ μ—°κ²° μ„€μ • μ‹œ μ‚¬μš©
57001:65535 TCP/UDP DOCKER, OpenVidu TURN μ„œλ²„μ—μ„œ 릴레이 된 λ―Έλ””μ–΄ μ—°κ²° μ„€μ • μ‹œ μ‚¬μš©


❀ νŒ€μ›

ν”„λ‘ νŠΈ

eondo - Overview

dongminYOUN - Overview

jonghopark1014 - Overview

λ°±

hagnoykmik - Overview

Gukss - Overview

sksn12 - Overview

About

πŸͺμ‹€μ‹œκ°„ μ§€λ„κ³΅μœ , 화상톡화 μ—¬ν–‰κ³„νš ν”Œλž«νΌ (PLAN!T)_SSAFY_곡톡_ν”„λ‘œμ νŠΈ


Languages

Language:Java 100.0%