Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

ย 

History

970 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

WalkyTalky

๐Ÿ“– ๋ชฉ์ฐจ

๐Ÿšถ ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ

  • WalkyTalky๋Š” ์‚ฐ์ฑ…์„ ์ข‹์•„ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ๋ณธ ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•˜์—ฌ ์‚ฐ์ฑ…์„ ํ•œ ๋’ค ์ž์‹ ์˜ ์‚ฐ์ฑ… ๊ธฐ๋ก์„ ๊ณต์œ ํ•˜๊ณ  ๊ฐ™์ด ์‚ฐ์ฑ… ํ•  ์‚ฌ๋žŒ๋“ค์„ ๊ตฌํ•˜์—ฌ ์‚ฐ์ฑ…์„ ํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๊ฐ€ ์‚ฐ์ฑ…์„ ์‹œ์ž‘ํ•˜๋ฉด ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ง€๋„์— ์‚ฐ์ฑ… ๊ฒฝ๋กœ๊ฐ€ ํ‘œ์‹œ๋˜๋ฉฐ ์‚ฐ์ฑ…์„ ๋งˆ์นœ ํ›„์—๋Š” ์ž์‹ ์˜ ์‚ฐ์ฑ…์˜ ์ œ๋ชฉ, ํ•œ์ค„ํ‰, ๋ณ„์ ์„ ๊ธฐ๋กํ•˜๊ณ  ํ™•์ธ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž์™€ ์‚ฐ์ฑ…์„ ํ•˜๊ณ  ์‹ถ์€ ์‚ฌ์šฉ์ž๋Š” ์†Œ๋ชจ์ž„์„ ๋ชจ์ง‘ํ•˜์—ฌ ์‚ฐ์ฑ… ์ผ์ •์„ ๊ด€๋ฆฌํ•˜๊ณ  ์ด์•ผ๊ธฐ๋ฅผ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ž์‹ ์˜ ์‚ฐ์ฑ… ๊ธฐ๋ก์„ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž์™€ ๊ณต์œ ํ•˜๊ณ  ์‹ถ์€ ์‚ฌ์šฉ์ž๋Š” ์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œํŒ์„ ํ†ตํ•ด ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž๋“ค๊ณผ ์ž์‹ ์˜ ๊ธฐ๋ก์„ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ง€๋„๋ฅผ ํ†ตํ•ด ์›ํ•˜๋Š” ์‚ฌ์šฉ์ž์˜ ์‚ฐ์ฑ… ๊ธฐ๋ก์„ ํ™•์ธํ•˜๋ฉฐ ์‚ฐ์ฑ… ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ‘ท ํŒ€์› ๊ตฌ์„ฑ

๊น€์ง„์šฉ ๊ฐ•๋ฏผ์ • ๊น€์—ฐํ™” ์‹ ์šฐ์„ญ ์ž„๋•๊ธฐ
@jinyong3512 @min922 @myeon0109 @Wooseobee @DKIMDK

๐Ÿ“† ๊ฐœ๋ฐœ ๊ธฐ๊ฐ„

2024.01.08 - 2024.02.16 (6์ฃผ)

๐Ÿ› ๏ธ ๊ธฐ์ˆ  ์Šคํƒ

Front-end

JavaScript vue.js bootstrap

Back-end

Java Spring Boot Redis

Database

mariadb

๋ฒ„์ „ ๋ฐ ์ด์Šˆ๊ด€๋ฆฌ

gitlab

ํ˜‘์—… ํˆด

discord jira notion mattermost

์„œ๋น„์Šค ๋ฐฐํฌ ํ™˜๊ฒฝ

AWS Lightsail amazons3 docker nginx

CI/CD

jenkins

๐Ÿ—๏ธ ์•„ํ‚คํ…์ฒ˜

๐Ÿ“ ๋ฌธ์„œ

๐Ÿ“Œ ์—ญํ•  ๋ถ„๋‹ด

  • ์‹ ์šฐ์„ญ
    • Infra
      • ์„œ๋ฒ„ ๊ตฌ์ถ•
      • Jenkins CI/CD ๊ตฌ์ถ•
    • UI
      • ์นด์นด์˜ค ๋กœ๊ทธ์ธ
      • ์†Œ๋ชจ์ž„ ์ฑ„ํŒ…
    • ๊ธฐ๋Šฅ
      • Oauth - ์นด์นด์˜ค ๋กœ๊ทธ์ธ ๊ตฌํ˜„
      • Chatting - ์†Œ๋ชจ์ž„ ๊ฐ€์ž…์ž๋“ค๊ฐ„์˜ ์ฑ„ํŒ… ๊ตฌํ˜„
      • S3 Image Upload ๊ตฌํ˜„
  • ์ž„๋•๊ธฐ
    • UI
      • ํ™ˆ
      • ๋กœ๊ทธ์ธ, ๋กœ๊ทธ์•„์›ƒ
      • ๋งˆ์ดํŽ˜์ด์ง€ ์กฐํšŒ ๋ฐ ์ˆ˜์ •
      • ๋‚ด ์œ„์น˜ ์ฃผ์†Œ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ
      • ๋„ค๋น„๊ฒŒ์ด์…˜ ๋ฐ”
    • ๊ธฐ๋Šฅ
      • KaKaoMap API (Geolocation)
      • Router guard
      • ๋กœ๊ทธ์ธ, ๋กœ๊ทธ์•„์›ƒ, ํšŒ์› ํƒˆํ‡ด
  • ๊ฐ•๋ฏผ์ •
    • UI
      • ์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œํŒ ๊ฒŒ์‹œ๊ธ€ ์ž‘์„ฑ, ์ˆ˜์ •, ์ƒ์„ธ ์กฐํšŒ, ๋ชฉ๋ก ์กฐํšŒ, ์‚ญ์ œ
      • ๋‚ด ๊ธฐ๋ก ๋ชฉ๋ก ์กฐํšŒ, ์ƒ์„ธ ์กฐํšŒ
      • ์Šคํฌ๋žฉ ํ•œ ๊ธฐ๋ก ๋ชฉ๋ก ์กฐํšŒ, ์ƒ์„ธ ์กฐํšŒ
      • ์ถ”์ฒœ ๊ธฐ๋ก ๋ชฉ๋ก ์กฐํšŒ
      • ๊ธฐ๋ก ๋”ฐ๋ผ ๋›ฐ๊ธฐ
    • ๊ธฐ๋Šฅ
      • ๋กœ์ปฌ ๋กœ๊ทธ์ธ ๋ฐ ๋กœ๊ทธ์•„์›ƒ API
      • jwt ์‚ฌ์šฉ์ž ์ธ์ฆ ๋กœ์ง ๊ตฌํ˜„ - Frontend, Backend
      • ํšŒ์› ์ •๋ณด ์กฐํšŒ API
      • ๋น„๋ฐ€๋ฒˆํ˜ธ ์ˆ˜์ • API
      • ํšŒ์› ์ •๋ณด ์ˆ˜์ • API
      • ํšŒ์› ํƒˆํ‡ด API
      • ์‚ฐ์ฑ… ๊ธฐ๋ก ๊ด€๋ จ API
      • ์‚ฐ์ฑ… ๊ธฐ๋ก ์ถ”์ฒœ ๊ด€๋ จ API
      • ์‚ฐ์ฑ… ๊ธฐ๋ก ์Šคํฌ๋žฉ ๊ด€๋ จ API
      • ์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œํŒ, ๋Œ“๊ธ€, ์ข‹์•„์š” ๊ด€๋ จ API
  • ๊น€์—ฐํ™”
    • UI
      • ์‚ฐ์ฑ…๊ธฐ๋ก ํŽ˜์ด์ง€
      • ํšŒ์›๊ฐ€์ž…(๋กœ์ปฌ)
    • ๊ธฐ๋Šฅ
      • ์‚ฐ์ฑ… ์‹œ์ž‘ํ•˜๊ธฐ
      • ์‚ฐ์ฑ… ์ผ์‹œ์ •์ง€
      • ์‚ฐ์ฑ… ์ค‘๋‹จ
      • ์‚ฐ์ฑ… ๊ธฐ๋กํ•˜๊ธฐ
      • ๋กœ์ปฌ ํšŒ์›๊ฐ€์ž…
      • ํšŒ์›๊ฐ€์ž… ์ •๋ณด(์•„์ด๋””, ๋‹‰๋„ค์ž„, ๋น„๋ฐ€๋ฒˆํ˜ธ) ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ
  • ๊น€์ง„์šฉ
    • UI
      • ์†Œ๋ชจ์ž„ ํŽ˜์ด์ง€
    • ๊ธฐ๋Šฅ
      • ํšŒ์›๊ฐ€์ž… API
        • SHA - 256 ๋น„๋ฐ€๋ฒˆํ˜ธ ์•”ํ˜ธํ™”, ๋น„๋ฐ€๋ฒˆํ˜ธ ํŒจํ„ด ๋งค์นญ, ๋ฉค๋ฒ„ ์ •๋ณด ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ
      • ์†Œ๋ชจ์ž„ API
      • ์†Œ๋ชจ์ž„ ๋ฉค๋ฒ„ API
      • ์†Œ๋ชจ์ž„ ์ผ์ • API

๐ŸŽฅ ๊ธฐ๋Šฅ ์‹œ์—ฐ

์นด์นด์˜ค ๋กœ๊ทธ์ธ
์ฑ„ํŒ…
  • ์†Œ๋ชจ์ž„ ๊ฐ€์ž…, ํƒˆํ‡ด์‹œ ์ฑ„ํŒ…๋ฐฉ ์•Œ๋ฆผ ๊ตฌํ˜„

  • ์†Œ๋ชจ์ž„์›๋“ค๋งŒ ์ฑ„ํŒ…๋ฐฉ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒ ์ œํ•œ

  • ๊ฐ€์ž… ์ด์ „์˜ ๋‚ด์šฉ์€ ํ™•์ธ ๋ถˆ๊ฐ€

๋กœ์ปฌ ํšŒ์›๊ฐ€์ž… ๋ฐ ๋กœ๊ทธ์ธ
  • ์นด์นด์˜ค ๋งต api์˜ geolocation์„ ํ™œ์šฉ, gps์ƒ์˜ ์ขŒํ‘œ๋กœ ์ฃผ์†Œ๋ฅผ ๊ฐ€์ ธ์™€ ๋‚ด ๋™๋„ค ์ €์žฅ

  • ๋‹‰๋„ค์ž„, ์•„์ด๋”” ์ค‘๋ณต ๋“ฑ ์œ ํšจ์„ฑ๊ฒ€์‚ฌ

  • ๋กœ๊ทธ์ธ ์‹œ ๋„ค๋น„๊ฒŒ์ด์…˜๋ฐ”์— ํ”„๋กœํ•„ ์‚ฌ์ง„๊ณผ ๋‹‰๋„ค์ž„, ๋งˆ์ดํŽ˜์ด์ง€ ๋ฐ ๋กœ๊ทธ์•„์›ƒ ํ•ญ๋ชฉ ๋ Œ๋”๋ง

๋ผ์šฐํ„ฐ๊ฐ€๋“œ
  • ๋น„ ๋กœ๊ทธ์ธ ์ƒํƒœ์ผ ๋•Œ ํด๋Ÿฝ, ์‚ฐ์ฑ… ๋“ฑ ์ฃผ์†Œ๋กœ ์ ‘๊ทผ ๋ฐฉ์ง€

  • ๋กœ๊ทธ์ธ ์ƒํƒœ์ผ ๋•Œ ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž… ์ฃผ์†Œ๋กœ ์ ‘๊ทผ ๋ฐฉ์ง€

๋งˆ์ดํŽ˜์ด์ง€
  • ๋‚ด ์ •๋ณด ๋ Œ๋”๋ง

  • ํ”„๋กœํ•„ ์‚ฌ์ง„, ๋‹‰๋„ค์ž„, ์†Œ๊ฐœ, ๋‚ด ๋™๋„ค, ๋น„๋ฐ€๋ฒˆํ˜ธ ์ˆ˜์ • ๊ฐ€๋Šฅ

  • ์œ ํšจ์„ฑ๊ฒ€์‚ฌ ์‹œํ–‰

  • ํšŒ์›ํƒˆํ‡ด ๊ธฐ๋Šฅ

์‚ฐ์ฑ…ํ•˜๊ธฐ
  • ์‚ฌ์šฉ์ž์˜ ์‚ฐ์ฑ…์„ GPS์™€ KakaoMap์„ ์ด์šฉํ•ด ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ถ”์ ํ•˜์—ฌ ๊ฑฐ๋ฆฌ, ์‹œ๊ฐ„์„ ์ธก์ •ํ•˜๊ณ , ๊ฒฝ๋กœ๋ฅผ ์ง€๋„์— ๊ทธ๋ฆฐ๋‹ค.
  • ์‚ฐ์ฑ… ์ข…๋ฃŒ ์‹œ ๊ธฐ๋ก์„ DB์— ์ €์žฅํ•œ๋‹ค

๋”ฐ๋ผ ์‚ฐ์ฑ…ํ•˜๊ธฐ
  • ๋”ฐ๋ผ ์‚ฐ์ฑ…
  • ๋”ฐ๋ผ ๊ฑธ์„ ๋ผ์ธ(๋นจ๊ฐ„์ƒ‰)์ด ๋œจ๊ณ , ๋‚ด๊ฐ€ ๊ฑท๋Š” ๋ผ์ธ(๋…ธ๋ž€์ƒ‰)๋„ ์—ญ์‹œ ๋ณด์—ฌ์ง
  • ๋”ฐ๋ผ ์‚ฐ์ฑ…ํ›„ ๊ธฐ๋ก ์ž…๋ ฅ

ย 

์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œํŒ
  • ์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œ๊ธ€ ๋ชฉ๋ก ์กฐํšŒ

  • ์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œ๊ธ€ ์ž‘์„ฑ

    • ์ œ๋ชฉ์ด๋‚˜ ๋‚ด์šฉ์„ ์ž…๋ ฅํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ๊ณต์œ  ํ•  ๊ธฐ๋ก์„ ์„ ํƒํ•˜์ง€ ์•Š์œผ๋ฉด ๊ธ€์„ ์ž‘์„ฑํ•˜์ง€ ๋ชปํ•จ

์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œ๊ธ€ ์ƒ์„ธ ์กฐํšŒ
  • ์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œ๊ธ€ ์ˆ˜์ •

  • ์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œ๊ธ€ ์‚ญ์ œ

  • ์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œ๊ธ€ ๋Œ“๊ธ€ ์ž‘์„ฑ

  • ์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œ๊ธ€ ๋Œ“๊ธ€ ์ˆ˜์ •

  • ์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œ๊ธ€ ๋Œ“๊ธ€ ์‚ญ์ œ

  • ์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œ๊ธ€ ์ข‹์•„์š”

    • ์ž์‹ ์˜ ๊ธ€์€ ์ข‹์•„์š”๋ฅผ ๋ˆ„๋ฅผ ์ˆ˜ ์—†์Œ
  • ์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œ๊ธ€ ์ข‹์•„์š” ์ทจ์†Œ

์‚ฐ์ฑ… ๊ธฐ๋ก ์Šคํฌ๋žฉ
  • ์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œ๊ธ€ ์Šคํฌ๋žฉ ๋ฐ ํ™•์ธ

    • ์ž์‹ ์˜ ๊ธ€์€ ์Šคํฌ๋žฉ ํ•  ์ˆ˜ ์—†์Œ

  • ์‚ฐ์ฑ… ๊ธฐ๋ก ๊ณต์œ  ๊ฒŒ์‹œ๊ธ€ ์Šคํฌ๋žฉ ์ทจ์†Œ

  • ์Šคํฌ๋žฉ ํ•œ ์ฝ”์Šค ์ƒ์„ธ ๋ณด๊ธฐ

๋‚˜์˜ ์‚ฐ์ฑ… ๊ธฐ๋ก
  • ๋‚ด ๊ธฐ๋ก ๋ชฉ๋ก ์กฐํšŒ

  • ๋‚ด ๊ธฐ๋ก ์ƒ์„ธ ์กฐํšŒ

  • ๋‚ด ๊ธฐ๋ก ์ˆ˜์ •

  • ๋‚ด ๊ธฐ๋ก ์‚ญ์ œ

์‚ฐ์ฑ… ๊ธฐ๋ก ์ถ”์ฒœ
  • ์‚ฌ์šฉ์ž์˜ ๋™๋„ค์— ๊ธฐ๋ฐ˜ํ•˜์—ฌ ํ•ด๋‹น ๋™๋„ค์˜ ์‚ฐ์ฑ… ๊ธฐ๋ก์„ ํ•„ํ„ฐ๋ง ํ•˜์—ฌ ๋ณด์—ฌ์คŒ

  • ์‚ฌ์šฉ์ž์˜ ์ •๋ณด์— ๊ธฐ๋ฐ˜ํ•˜์—ฌ ์œ ์‚ฌํ•œ ์‚ฌ์šฉ์ž์˜ ์‚ฐ์ฑ… ๊ธฐ๋ก์„ ํ•„ํ„ฐ๋ง ํ•˜์—ฌ ๋ณด์—ฌ์คŒ

  • ์ถ”์ฒœ ๋ฐ›์€ ๊ธฐ๋ก์ด ๊ธฐํ˜ธ์— ๋ถ€ํ•ฉํ•˜์ง€ ์•Š์œผ๋ฉด ํ•ด๋‹น ๊ธฐ๋ก์„ ๋” ์ด์ƒ ์ถ”์ฒœ ๋ฐ›์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Œ

    ย 

์†Œ๋ชจ์ž„
  • ์†Œ๋ชจ์ž„ ๋ฆฌ์ŠคํŠธ

    • ์‚ฌ์šฉ์ž๊ฐ€ ๊ฐ€์ž…ํ•œ ์†Œ๋ชจ์ž„ ๋ชฉ๋ก๋“ค์„ ๋ณด์—ฌ์คŒ
    • ์‚ฌ์šฉ์ž์˜ ์ •๋ณด์— ๊ธฐ๋ฐ˜ํ•˜์—ฌ ์†Œ๋ชจ์ž„ ์ถ”์ฒœ ๋ชฉ๋ก๋“ค์„ ๋ณด์—ฌ์คŒ
      • ๋‚˜์ด, ์„ฑ๋ณ„, ์ตœ๋Œ€์ธ์›, ๋ชจ์ง‘์—ฌ๋ถ€, ๊ฐ™์€ ๋ฒ•์ •๋™
    • ๊ทธ ์ด์™ธ์˜ ์†Œ๋ชจ์ž„ ๋ชฉ๋ก๋“ค์„ ๋ณด์—ฌ์คŒ
  • ์†Œ๋ชจ์ž„ ์ƒ์„ฑ

    • ์œ„์น˜, ์‚ฌ์ง„, ๋‚˜์ด, ์„ฑ๋ณ„, ์ธ์›, ๊ฐ€์ž… ์„ค์ •์„ ๋ฐ›์•„ ์†Œ๋ชจ์ž„์„ ์ƒ์„ฑ ํ•จ
์†Œ๋ชจ์ž„ ๋ฉค๋ฒ„
  • ์†Œ๋ชจ์ž„ ๊ฐ€์ž…

  • ์†Œ๋ชจ์ž„ ์„ค์ •

    • ์†Œ๋ชจ์ž„ ๋ฉค๋ฒ„๋ฅผ ์ถ”๋ฐฉ
    • ์†Œ๋ชจ์ž„ ์‹ ์ฒญ ๋ฉค๋ฒ„๋ฅผ ์ˆ˜๋ฝ ๊ฑฐ์ ˆ
    • ์†Œ๋ชจ์ž„ ์‚ญ์ œ
์†Œ๋ชจ์ž„ ์ผ์ •
  • ์†Œ๋ชจ์ž„ ์ผ์ • ์ƒ์„ฑ

    • ์ œ๋ชฉ, ๋‚ ์งœ, ์‹œ๊ฐ„, ์žฅ์†Œ, ์ธ์›, ๋‚ด์šฉ์„ ์ž…๋ ฅ๋ฐ›์•„ ์ผ์ •์„ ์ƒ์„ฑํ•จ
  • ์†Œ๋ชจ์ž„ ๊ธฐ๋ก ์—…๋ฐ์ดํŠธ

    • ๊ตฌ์„ฑ์›์ด ์‚ฐ์ฑ…ํ•œ ๊ธฐ๋ก์„ ์†Œ๋ชจ์ž„ ์ผ์ •์— ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ์Œ
  • ์†Œ๋ชจ์ž„ ์ผ์ • ๊ธฐ๋ก ๋ณต์‚ฌ

    • ์ผ์ •์— ์ฐธ์—ฌํ•œ ์†Œ๋ชจ์ž„์›์€ ์ž์‹ ์˜ ์‚ฐ์ฑ… ๊ธฐ๋ก์œผ๋กœ ๋ณต์‚ฌ ํ•  ์ˆ˜ ์žˆ์Œ

๐Ÿ’ป ๊ตฌ๋™ ๋ฐฉ๋ฒ•

  1. Clone Project
git clone https://lab.ssafy.com/s10-webmobile2-sub2/S10P12A808.git
  1. KAKAO API issuance
1. ์นด์นด์˜ค ๊ฐœ๋ฐœ์ž์‚ฌ์ดํŠธ (https://developers.kakao.com) ์ ‘์†
2. ๊ฐœ๋ฐœ์ž ๋“ฑ๋ก ๋ฐ ์•ฑ ์ƒ์„ฑ
3. ์›น ํ”Œ๋žซํผ ์ถ”๊ฐ€: ์•ฑ ์„ ํƒ โ€“ [ํ”Œ๋žซํผ] โ€“ [Web ํ”Œ๋žซํผ ๋“ฑ๋ก] โ€“ ์‚ฌ์ดํŠธ ๋„๋ฉ”์ธ ๋“ฑ๋ก
4. ์‚ฌ์ดํŠธ ๋„๋ฉ”์ธ ๋“ฑ๋ก: [์›น] ํ”Œ๋žซํผ์„ ์„ ํƒํ•˜๊ณ , [์‚ฌ์ดํŠธ ๋„๋ฉ”์ธ] ์„ ๋“ฑ๋ก. (์˜ˆ: http://localhost:5173)
5. ํŽ˜์ด์ง€ ์ƒ๋‹จ์˜ [JavaScript ํ‚ค]๋ฅผ ์ง€๋„ API์˜ appkey๋กœ, [REST API ํ‚ค] ์นด์นด์˜ค ๋กœ๊ทธ์ธ API์˜ appkey๋กœ ์‚ฌ์šฉ.
  1. change path to /frontend & npm install
npm i
  1. create .env file
VITE_KAKAO_API_KEY = {kakao JavaScript API key}
VITE_KAKAO_CLIENT_Id = {kakao REST API key}
VITE_KAKAO_REDIRECT_URI = {service url}/member/local-signup
VITE_MARKER_IMAGE_ROUTE = https://walkytalky.s3.ap-northeast-2.amazonaws.com/marker/
  1. frontend start
npm run dev
  1. change path to /backend/src/main
mkdir resources
  1. change path to /backend/src/main/resources
cd resources
  1. create application.yml
server:
  port: {spring boot application port number}

spring:
  datasource:
    driver-class-name: {database class name}
    url: {MariaDB connect url}
    username: {MariaDB username}
    password: {MariaDB password}

  data:
    redis:
      host: {service url}
      port: {redis port number}
      password: {redis password}

  servlet:
    multipart:
      max-file-size: {max-file-size}
      max-request-size: {max-request-size}

management:
  endpoints:
    jmx:
      exposure:
        include: "health"

security:
  salt: {JWT secret value}
  atkExp: 3600000 # 1์‹œ๊ฐ„
  rtkExp: 604800000 # 7์ผ

cloud:
  aws:
    credentials:
      access-key: {S3 access-key}
      secret-key: {S3 secret-key}
    region:
      static: {S3 region}
      auto: false
    stack:
      auto: false
    s3:
      bucket: {S3 Bucket name}

oauth:
  kakao:
    client-id: {kakao REST API key}
    client-secret: {kakao login Client Secret}
    redirect-uri: {service url}/member/local-signup
    request-token-uri: https://kauth.kakao.com/oauth/token
    request-user-info-uri: https://kapi.kakao.com/v2/user/me

๐Ÿ“ฆ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

Frontend
โ””โ”€โ”€src
    โ”œโ”€โ”€assets
    โ”‚   โ””โ”€โ”€img
    โ”‚
    โ”œโ”€โ”€components
    โ”‚   โ”œโ”€โ”€common
    โ”‚   โ”‚   โ”œโ”€โ”€ButtonWithIcon
    โ”‚   โ”‚   โ”œโ”€โ”€ClubDetailHeaderNav
    โ”‚   โ”‚   โ”œโ”€โ”€TheFooter
    โ”‚   โ”‚   โ”œโ”€โ”€TheHeaderNav
    โ”‚   โ”‚   โ”œโ”€โ”€CourseFeed
    โ”‚   โ”‚   โ””โ”€โ”€WalkHeaderNav
    โ”‚   โ”œโ”€โ”€chat
    โ”‚   โ”‚   โ”œโ”€โ”€Message
    โ”‚   โ”‚   โ””โ”€โ”€MessageList
    โ”‚   โ”œโ”€โ”€club
    โ”‚   โ”‚   โ””โ”€โ”€ClubList
    โ”‚   โ”œโ”€โ”€member
    โ”‚   โ”‚   โ””โ”€โ”€MemberListView
    โ”‚   โ”œโ”€โ”€walk
    โ”‚   โ”‚   โ”œโ”€โ”€StarRating
    โ”‚   โ”‚   โ”œโ”€โ”€StopWatch
    โ”‚   โ”‚   โ””โ”€โ”€RecordModifyModal
    โ”‚   โ””โ”€โ”€shareboard
    โ”‚       โ”œโ”€โ”€shareBoardComment
    โ”‚       โ”œโ”€โ”€shareBoardCommentForm
    โ”‚       โ”œโ”€โ”€shareBoardLike
    โ”‚       โ”œโ”€โ”€shareBoardListItem
    โ”‚       โ”œโ”€โ”€shareBoardListUpper
    โ”‚       โ”œโ”€โ”€shareBoardMember
    โ”‚       โ”œโ”€โ”€shareBoardRecord
    โ”‚       โ”œโ”€โ”€shareBoardScrap
    โ”‚       โ””โ”€โ”€shareBoardTitle
    โ”‚
    โ”œโ”€โ”€router
    โ”‚   โ””โ”€โ”€index
    โ”‚
    โ”œโ”€โ”€stores
    โ”‚   โ”œโ”€โ”€chat
    โ”‚   โ”œโ”€โ”€jwtFilter
    โ”‚   โ”œโ”€โ”€counter
    โ”‚   โ”œโ”€โ”€club
    โ”‚   โ”œโ”€โ”€member
    โ”‚   โ”œโ”€โ”€shareboard
    โ”‚   โ””โ”€โ”€walk
    โ”‚
    โ”œโ”€โ”€views
    โ”‚   โ”œโ”€โ”€club
    โ”‚   โ”‚   โ”œโ”€โ”€ClubView
    โ”‚   โ”‚   โ”œโ”€โ”€ClubDetailView
    โ”‚   โ”‚   โ”œโ”€โ”€ClubCreateView
    โ”‚   โ”‚   โ”œโ”€โ”€ClubPlanDetail
    โ”‚   โ”‚   โ”œโ”€โ”€ClubPlanOverwrite
    โ”‚   โ”‚   โ”œโ”€โ”€ClubPlanRegist
    โ”‚   โ”‚   โ”œโ”€โ”€ClubPlanView
    โ”‚   โ”‚   โ”œโ”€โ”€ClubSettingApplicantView
    โ”‚   โ”‚   โ”œโ”€โ”€ClubSettingClubView
    โ”‚   โ”‚   โ”œโ”€โ”€ClubSettingHeaderNav
    โ”‚   โ”‚   โ”œโ”€โ”€ClubSettingMemberView
    โ”‚   โ”‚   โ””โ”€โ”€ClubChatView
    โ”‚   โ”œโ”€โ”€member
    โ”‚   โ”‚   โ”œโ”€โ”€Login
    โ”‚   โ”‚   โ”œโ”€โ”€Logout
    โ”‚   โ”‚   โ”œโ”€โ”€ModifyInfo
    โ”‚   โ”‚   โ”œโ”€โ”€MyLocationView
    โ”‚   โ”‚   โ”œโ”€โ”€Mypage
    โ”‚   โ”‚   โ”œโ”€โ”€RecordScrapList
    โ”‚   โ”‚   โ””โ”€โ”€Signup
    โ”‚   โ”œโ”€โ”€shareboard
    โ”‚   โ”‚   โ”œโ”€โ”€ShareBoardView
    โ”‚   โ”‚   โ”œโ”€โ”€ShareBoardDetailView
    โ”‚   โ”‚   โ”œโ”€โ”€ShareBoardModifyView
    โ”‚   โ”‚   โ””โ”€โ”€ShareBoardWriteView
    โ”‚   โ”œโ”€โ”€walk
    โ”‚   โ”‚   โ”œโ”€โ”€DoWalk
    โ”‚   โ”‚   โ”œโ”€โ”€RecommendView
    โ”‚   โ”‚   โ”œโ”€โ”€ScrapDetaillView
    โ”‚   โ”‚   โ”œโ”€โ”€ScrapListView
    โ”‚   โ”‚   โ”œโ”€โ”€WalkDetaillView
    โ”‚   โ”‚   โ””โ”€โ”€WalkList
    โ”‚   โ””โ”€โ”€Homewview

Backend
โ””โ”€โ”€ src
    โ”œโ”€โ”€ main
    โ”‚   โ”œโ”€โ”€ java
    โ”‚   โ”‚   โ””โ”€โ”€ com
    โ”‚   โ”‚       โ””โ”€โ”€ ssafy
    โ”‚   โ”‚           โ””โ”€โ”€ backend
    โ”‚   โ”‚               โ”œโ”€โ”€ BackendApplication.java
    โ”‚   โ”‚               โ”œโ”€โ”€ member
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ controller
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ domain
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ dto
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ repository
    โ”‚   โ”‚               โ”‚   โ””โ”€โ”€ service
    โ”‚   โ”‚               โ”œโ”€โ”€ group
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ controller
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ domain
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ dto
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ repository
    โ”‚   โ”‚               โ”‚   โ””โ”€โ”€ service
    โ”‚   โ”‚               โ”œโ”€โ”€ record
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ controller
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ domain
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ dto
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ repository
    โ”‚   โ”‚               โ”‚   โ””โ”€โ”€ service
    โ”‚   โ”‚               โ”œโ”€โ”€ shareBoard
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ controller
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ domain
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ dto
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ repository
    โ”‚   โ”‚               โ”‚   โ””โ”€โ”€ service
    โ”‚   โ”‚               โ”œโ”€โ”€ shareBoardComment
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ controller
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ domain
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ dto
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ repository
    โ”‚   โ”‚               โ”‚   โ””โ”€โ”€ service
    โ”‚   โ”‚               โ”œโ”€โ”€ global
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ config
    โ”‚   โ”‚               โ”‚   โ”‚   โ”œโ”€โ”€ SwaggerConfig.java
    โ”‚   โ”‚               โ”‚   โ”‚   โ”œโ”€โ”€ properties
    โ”‚   โ”‚               โ”‚   โ”‚   โ”œโ”€โ”€ resttemplate
    โ”‚   โ”‚               โ”‚   โ”‚   โ””โ”€โ”€ security
    โ”‚   โ”‚               โ”‚   โ”œโ”€โ”€ error
    โ”‚   โ”‚               โ”‚   โ”‚   โ”œโ”€โ”€ ErrorResponse.java
    โ”‚   โ”‚               โ”‚   โ”‚   โ”œโ”€โ”€ GlobalExceptionHandler.java
    โ”‚   โ”‚               โ”‚   โ”‚   โ””โ”€โ”€ exception
    โ”‚   โ”‚               โ”‚   โ””โ”€โ”€ util
    โ”‚   โ””โ”€โ”€ resources
    โ”‚       โ””โ”€โ”€ application.yml

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages