ssafy-Cherish / Cherish

πŸ’š μ»€ν”Œλ“€μ„ μœ„ν•œ 화상 톡화, ν•˜μ΄λΌμ΄νŠΈ 클립 생성 μ„œλΉ„μŠ€

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Hits

πŸ’ Cherish πŸ’


πŸ’š κ°œμš”


체리씨(Cherish) λŠ” 'μ†Œμ€‘νžˆ μ—¬κΈ°λ‹€', '아끼닀'λΌλŠ” 뜻으둜 μž₯거리 μ»€ν”Œ, λ˜λŠ” μ˜μƒν†΅ν™”λ₯Ό μ’‹μ•„ν•˜λŠ” μ»€ν”Œμ΄ 보닀 재밌고 값진 좔얡을 μŒ“μ„ 수 μžˆλ„λ‘ μ˜μƒν†΅ν™” μ„œλΉ„μŠ€μ™€ ν•¨κ»˜ μ»€ν”Œλ“€μ˜ ν–‰λ³΅ν–ˆλ˜ μˆœκ°„μ„ 클립으둜 λ§Œλ“€μ–΄ μ œκ³΅ν•˜κ³  λ³΄κ΄€ν•˜λŠ” μ›Ήμ„œλΉ„μŠ€μž…λ‹ˆλ‹€.

기획 λͺ…μ„Έ

  • λŒ€μƒ : λ‘±λ””(μž₯거리) μ»€ν”Œ, μ˜μƒν†΅ν™”λ₯Ό μ’‹μ•„ν•˜λŠ” μ»€ν”Œ

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


  • 체리콜(체리톑)

    • μ»€ν”Œλ“€λ§Œμ˜ μ˜μƒν†΅ν™” μ„œλΉ„μŠ€ 제곡
    • μ˜μƒν†΅ν™” 쀑 μŒμ„±μ„ 뢄석해 νŠΉμ • 단어가 작히면 κ·Έ μˆœκ°„μ˜ μ˜μƒμ„ ν¬λ‘­ν•˜μ—¬ μ €μž₯
    • μ±„νŒ… νƒ­, μ €μž₯ 된 클립을 ν™•μΈν•˜λŠ” 클립탭, 톡화 λ‚΄μš©μ„ μ‹€μ‹œκ°„ ν™•μΈν•˜λŠ” 체리톑 νƒ­ κΈ°λŠ₯ 제곡
    • 톡화 λ‚΄μš©μ„ μ‹€μ‹œκ°„μœΌλ‘œ λΆ„μ„ν•˜μ—¬ νŠΉμ • μƒν™©μ—μ„œλŠ” ChatGPT의 도움을 λ°›μ•„ 닡변을 ν•΄μ£ΌλŠ” μ„œλΉ„μŠ€ 제곡
    • 닀이어리에 ν•΄λ‹Ή μ˜μƒλ“€μ„ μ €μž₯ν•˜μ—¬ 이후에 λ³Ό 수 μžˆλ„λ‘ 함
  • 였늘의 질문

    • 맀일 μ»€ν”Œλ“€μ„ μœ„ν•œ μ§ˆλ¬Έμ„ 제곡
    • λ‹€μ–‘ν•œ μƒν™©μ—μ„œ 직접 말둜 μ „λ‹¬ν•˜μ§€ λͺ»ν–ˆλ˜ 보여쀄 수 μžˆλŠ” κΈ°λŠ₯
    • μƒλŒ€κ°€ λ“€μ–΄μ˜€μ§€ μ•Šμ•„λ„ μ²΄λ¦¬μ”¨μ—μ„œ μ œκ³΅ν•˜λŠ” μ§ˆλ¬Έμ— μ˜μƒμœΌλ‘œ 닡을 ν•˜μ—¬ μ €μž₯
    • μƒλŒ€μ™€ μžμ‹  λ‘˜ λ‹€ 같은 μ§ˆλ¬Έμ— 닡을 μ €μž₯ν•˜λ©΄ μƒλŒ€μ˜ 닡을 확인할 수 있음
  • 닀이어리

    • μ˜μƒν†΅ν™”λ₯Ό ν•œ 날을 ν‘œμ‹œν•΄μ£Όκ³  ν•΄λ‹Ή 일둜 λ“€μ–΄κ°€λ©΄ κ·Έ 날에 μ €μž₯된 크둭을 ν™•μΈν•˜κ³  λ‹€μ‹œ λ³Ό 수 있음
  • 체리보관함

    • νŠΉμ • ν‚€μ›Œλ“œλ‘œ 크둭된 μ˜μƒμ„ ν‚€μ›Œλ“œλ³„λ‘œ λΆ„λ₯˜ν•˜μ—¬ ν•œ 달간 ν¬λ‘­μ˜μƒ λͺ¨μŒμ§‘을 제곡
    • μ΄μš©μžλŠ” ν•œ 달간 νŠΉμ • ν‚€μ›Œλ“œλ‘œ λ§ν•œ λͺ¨λ“  μˆœκ°„μ„ ν•˜λ‚˜μ˜ μ˜μƒμœΌλ‘œ ν™•μΈν•˜λ©° 좔얡을 λ˜λŒμ•„ λ³Ό 수 있음

πŸ’š νŒ€ μ†Œκ°œ


Frontend

μ „μ°¬ν˜ (νŒ€μž₯) κΉ€κ²½λ²” (FE 리더) 양원석 (FE, WebRTC)
@ChaNyeok1225 @dreamingbeom @yangwonseok98

Backend

κΉ€μ˜ˆν˜„ (BE 리더) κΉ€μ€€μ—½ (BE) μ΄μŠΉμ€€ (BE, Infra)
@yeaaaaahhhhh @junyeop1322 @tmdwns7809

πŸ’š κ°œλ°œν™˜κ²½


Back-end 버전 Front-end 버전 Infra 버전
JAVA 17.0.9 node.js 20.10.0 AWS EC2
SpringBoot 3.2.1 React 18.2.0 Docker 24.0.7
MySQL 8.0.35 farmer-motion 11.0.3 Jenkins 2.426.2
MyBatis 3.0.3 React Query 5.18.1
Zustand 4.5.0
Tailwind css 3.4.1

πŸ’š μ„œλΉ„μŠ€ ν™”λ©΄


νšŒμ›κ°€μž… 및 둜그인

  • 카카였 μ†Œμ…œλ‘œκ·ΈμΈμ„ 톡해 νšŒμ›κ°€μž…μ„ 진행 ν•  수 μžˆμŠ΅λ‹ˆλ‹€

  • 첫 νšŒμ›μ€ 체리 μ½”λ“œλ₯Ό 생성할 수 μžˆμŠ΅λ‹ˆλ‹€


  • 이후 μƒμ„±λœ 체리 μ½”λ“œλ₯Ό λ³΅μ‚¬ν•˜μ—¬ μ—°μΈμ—κ²Œ μ£Όκ±°λ‚˜ μΉ΄μΉ΄μ˜€ν†‘μœΌλ‘œ 메세지λ₯Ό λ°”λ‘œ 보낼 수 μžˆμŠ΅λ‹ˆλ‹€


  • μƒλŒ€λ°©μ˜ 경우 μΉ΄μΉ΄μ˜€ν†‘ 메세지λ₯Ό 톡해 ν™ˆνŽ˜μ΄μ§€μ— 접속 ν•  수 μžˆμŠ΅λ‹ˆλ‹€

  • 체리 μ½”λ“œλ₯Ό μž…λ ₯ν•˜κ±°λ‚˜, λ©”μ„Έμ§€λ‘œ μžλ™ μ™„μ„±λ˜λŠ” 체리 μ½”λ“œλ‘œ νšŒμ›κ°€μž…μ„ 진행 ν•  수 μžˆμŠ΅λ‹ˆλ‹€


  • νšŒμ›κ°€μž…μ„ 진행 ν•œ ν›„ λ‹€μ‹œ ν•œ 번 λ‘œκ·ΈμΈμ„ 눌러 λ‘œκ·ΈμΈμ„ μ§„ν–‰ν•˜μ—¬ λ©”μΈνŽ˜μ΄μ§€λ‘œ 접속할 수 μžˆμŠ΅λ‹ˆλ‹€

체리콜(μ˜μƒ 톡화)

  • μ²΄λ¦¬μ½œμ„ ν΄λ¦­ν•˜μ—¬ μ—°μΈκ³Όμ˜ 화상톡화λ₯Ό 진행 ν•  수 μžˆμŠ΅λ‹ˆλ‹€

  • μ²΄λ¦¬μ½œμ„ μ ‘μ†ν•˜μ—¬ μž…μž₯ λ²„νŠΌμ„ μ„œλ‘œκ°€ ν΄λ¦­ν•˜μ—¬ μ€€λΉ„κ°€ μ™„λ£Œλ˜λ©΄ 였λ₯Έμͺ½ ν•˜λ‹¨μ˜ ν†΅ν™”λ²„νŠΌμ΄ ν™œμ„±ν™”λ©λ‹ˆλ‹€.

  • 이후 ν™œμ„±ν™” 된 톡화 λ²„νŠΌμ„ ν΄λ¦­ν•˜λ©΄ μ—°μΈκ³Όμ˜ 체리콜(화상톡화)이 μ§„ν–‰λ˜λ©° μ±„νŒ…κΈ°λŠ₯을 이용 ν•  수 μžˆμŠ΅λ‹ˆλ‹€


  • 체리콜(화상톡화) 쀑에 λŒ€ν™”λ₯Ό λ‚˜λˆ„λŠ” λ‚΄μš©λ“€μ€ λͺ¨λ‘ μ²΄λ¦¬ν†‘μ—μ„œ 확인 ν•  수 있으며 νŠΉμ •ν•œ μƒν™©μ—μ„œλŠ” ChatGPT의 도움을 λ°›μ•„ λ‹€μ–‘ν•œ λŒ€ν™”λ₯Ό μ΄μ–΄λ‚˜κ°ˆ 수 μžˆμŠ΅λ‹ˆλ‹€.

  • 예λ₯Ό λ“€μ–΄ '뢀산에 κ°€μ„œ λ­ν• κΉŒ?'λΌλŠ” λŒ€ν™”μ˜ 주제라면, ChatGPTκ°€ 이λ₯Ό μΈμ‹ν•˜μ—¬ λΆ€μ‚°μ˜ λͺ…λ¬Όκ³Ό 관광지λ₯Ό μ†Œκ°œν•©λ‹ˆλ‹€.


  • λ˜ν•œ ν™”μƒν†΅ν™”λ‘œ λŒ€ν™” 쀑 νŠΉμ • ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•œ νŠΉλ³„ν•œ μˆœκ°„μ„ 클립으둜 μ €μž₯ν•˜μ—¬ μ—°μΈλ“€μ—κ²Œ μ œκ³΅ν•©λ‹ˆλ‹€.

  • 생성 된 클립은 클립 νƒ­μ—μ„œ 확인 ν•  수 있으며 ν΄λ¦½μ˜μƒμ„ ν΄λ¦­ν•˜λ©΄ λ°”λ‘œ μž¬μƒμ΄ κ°€λŠ₯ν•©λ‹ˆλ‹€.

  • 클립은 닀이어리에 μ €μž₯λ˜μ–΄ μ–Έμ œλ“ μ§€ 확인 ν•  수 있으며 닀이어리 κΈ°λŠ₯을 톡해 관리 ν•  수 μžˆμŠ΅λ‹ˆλ‹€

닀이어리

  • λ©”μΈνŽ˜μ΄μ§€μ˜ λ©”λͺ¨κΈ°λŠ₯을 톡해 μƒλŒ€λ°©κ³Όμ˜ λ‹€μ–‘ν•œ λ©”λͺ¨λ‚΄μš©μ„ μ£Όκ³  받을 수 μžˆμŠ΅λ‹ˆλ‹€

  • 닀이어리λ₯Ό 톡해 맀일의 기둝과 μ˜μƒ 클립을 ν™•μΈν•˜κ³  관리 ν•  수 μžˆμŠ΅λ‹ˆλ‹€

  • μ²΄λ¦¬μ½œμ„ μ§„ν–‰ν•œ λ‚ μ—λŠ” λ³΄λΌμƒ‰μœΌλ‘œ ν‘œμ‹œλ˜μ–΄ 맀일을 기둝 ν•  수 μžˆμŠ΅λ‹ˆλ‹€

  • κΈ°λ…μΌμ—λŠ” 케이크 ν‘œμ‹œλ₯Ό 톡해 확인 ν•  수 있으며 μ–΄λ– ν•œ 기념일인지 λ‹€μ΄μ–΄λ¦¬μ—μ„œ 확인 ν•  수 μžˆμŠ΅λ‹ˆλ‹€


  • μ²΄λ¦¬μ½œμ„ 톡해 μ €μž₯된 ν΄λ¦½μ˜μƒκ³Ό μ±„νŒ… 기둝은 λ‹€μ΄μ–΄λ¦¬μ—μ„œ ν™•μΈν•˜κ³  μž¬μƒ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

  • Pin μ‹œμŠ€ν…œμ„ μ΄μš©ν•˜μ—¬ μ›ν•˜λŠ” μ˜μƒμ— Pin을 κ½‚μœΌλ©΄ λ©”μΈνŽ˜μ΄μ§€ μΊλŸ¬μ…€μ— μ¦‰μ‹œ μž¬μƒκ°€λŠ₯ν•œ ν΄λ¦½μ˜μƒμ„ λ³΄μ—¬μ€λ‹ˆλ‹€

  • μΊλŸ¬μ…€μ—μ„œ 클립을 μž¬μƒ ν•  수 있으며 μ›ν•˜μ§€ μ•Šμ€ 클립은 Pin을 λΉΌκ±°λ‚˜ μ‚­μ œ ν•  수 μžˆμŠ΅λ‹ˆλ‹€

였늘의 질문

  • 맀일 μ—°μΈλ“€μ—κ²Œ μ œκ³΅λ˜λŠ” νŠΉλ³„ν•œ μ§ˆλ¬Έμ„ 톡해 μ„œλ‘œμ—κ²Œ λ§ν•˜μ§€ λͺ»ν–ˆλ˜ μ†λ§ˆμŒμ΄λ‚˜ λ‹€μ–‘ν•œ 이야기듀을 μ˜μƒμœΌλ‘œ λ…Ήν™”ν•˜μ—¬ μƒλŒ€λ°©μ—κ²Œ 보여쀄 수 μžˆμŠ΅λ‹ˆλ‹€

  • 였늘의질문 탭을 ν΄λ¦­ν•˜μ—¬ μ§ˆλ¬Έμ— λŒ€ν•œ 닡을 μ˜μƒμœΌλ‘œ λ…Ήν™” ν•  수 μžˆμŠ΅λ‹ˆλ‹€

  • μƒλŒ€λ°©κ³Ό μžμ‹ μ΄ λͺ¨λ‘ μ§ˆλ¬Έμ— λ‹΅λ³€ν•˜μ˜€μ„ κ²½μš°μ—λŠ” ν•΄λ‹Ή μ§ˆλ¬Έμ— λŒ€ν•œ λ‹΅λ³€ μ˜μƒμ„ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€

ν™”λΆ„

  • μ»€ν”Œλ“€μ˜ λ‹€μ–‘ν•œ ν™œλ™μ„ 톡해 μ»€ν”Œ 화뢄을 μ„±μž₯μ‹œν‚€κ³  열맀λ₯Ό 맺을 수 μžˆμŠ΅λ‹ˆλ‹€

  • ν™”λΆ„νŽ˜μ΄μ§€λ₯Ό 톡해 ν˜„μž¬ 총 λͺ¨μ€ 클립 갯수, μ²΄λ¦¬μ½œμ„ μ§„ν–‰ν•œ μ‹œκ°„μ„ 확인 ν•  수 μžˆμŠ΅λ‹ˆλ‹€

  • μ΄λ‹¬μ˜ μ„±μž₯내역을 톡해 λͺ¨μ€ ν™”λΆ„ μ„±μž₯치λ₯Ό 확인 ν•  수있으며 κ·Έλž˜ν”„λ₯Ό 톡해 ν˜„μž¬ μ–Όλ§ˆλ‚˜ 화뢄이 μ„±μž₯ν•˜μ˜€λŠ”μ§€ 확인 ν•  수 μžˆμŠ΅λ‹ˆλ‹€

체리보관함

  • μ»€ν”Œλ“€μ΄ μ €μž₯ν•˜κ³  μžˆλŠ” λ‹€μ–‘ν•œ 클립 μ˜μƒμ„ ν•œ λ‹¬κ°„μ˜ 기둝을 λͺ¨μ•„ ν‚€μ›Œλ“œ λ³„λ‘œ 클립 μ˜μƒμ„ ν•©μ„±ν•˜μ—¬ ν‚€μ›Œλ“œλ³„ λͺ¨μŒμ§‘ μ˜μƒμ„ μ œκ³΅ν•©λ‹ˆλ‹€

  • λ‚ μ§œλ₯Ό μ„ νƒν•˜λ©΄ κ·Έ 달에 μƒμ„±λœ 클립 μ˜μƒλ“€μ„ ν‚€μ›Œλ“œλ³„λ‘œ λͺ¨μ•„놓은 ν‚€μ›Œλ“œλ³„ λͺ¨μŒμ§‘ μ˜μƒμ„ 확인 ν•  수 μžˆμŠ΅λ‹ˆλ‹€

πŸ’š 아킀텍쳐 (κΈ°μˆ μŠ€νƒ)


πŸ’š ERD


About

πŸ’š μ»€ν”Œλ“€μ„ μœ„ν•œ 화상 톡화, ν•˜μ΄λΌμ΄νŠΈ 클립 생성 μ„œλΉ„μŠ€


Languages

Language:JavaScript 61.2%Language:Java 36.1%Language:CSS 1.7%Language:HTML 0.9%Language:Dockerfile 0.1%