zaper11 / NavyBottle

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

2nd Team Repository

Team: Navy_Bottle

๐Ÿš‘๐Ÿš‘ Pandaemic Manager ๐Ÿš‘๐Ÿš‘

๐Ÿฅ How to start:

  • Browser compatibility: โš ๏ธโš ๏ธโš ๏ธ We suggest using Chrome as fullscreen [F11] โš ๏ธโš ๏ธโš ๏ธ

Frontend:

Pandaemic Manager์˜ Frontend code ์ตœ์ข… ์™„์„ฑ๋ณธ์€ develop branch์— ์žˆ๋‹ค.
๋‹ค์Œ์€ frontend file ์‹คํ–‰ ์ˆœ์„œ์ด๋‹ค.

  1. Node.js v14.17.4 / yarn 1.22.11v ์„ ๋‹ค์šด ๋ฐ›๋Š”๋‹ค.
  2. github์—์„œ pull์„ ๋ฐ›๊ณ  develop ๋ธŒ๋žœ์น˜๋กœ ์ด๋™ํ•œ๋‹ค.
  3. root folder์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ช…๋ น์–ด๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ์ž…๋ ฅํ•œ๋‹ค.
    $ cd NavyBottle/Frontend/navy-bottle-fe
    $ yarn 
    $ yarn start 
    
  4. "localhost:3000/"์„ chrome url์ฐฝ์— ์ž…๋ ฅํ•˜์—ฌ ์›น ํŽ˜์ด์ง€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค

Backend:

Pandaemic Manager์˜ Backend code ์ตœ์ข… ์™„์„ฑ๋ณธ์€ develop-backend branch์— ์žˆ๋‹ค.

backend์˜ ๊ฒฝ์šฐ aws EC2 linux server์™€ nginx uwsgi ์ด์šฉํ•ด์„œ ๋ฐฐํฌํ•˜์˜€๋‹ค.

์„œ๋ฒ„๊ฐ€ ๋ณด๋‚ด๋Š” ์ •๋ณด๋ฅผ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
1. PostMan์„ ๋‹ค์šด ๋ฐ›๋Š”๋‹ค.
2. Get Method๋ฅผ ์ด์šฉํ•ด์„œ http://ec2-15-165-19-108.ap-northeast-2.compute.amazonaws.com/covid/ ์š”์ฒญ์„ ๋ณด๋‚ธ๋‹ค
3. Json ํŒŒ์ผ์ด ์˜ค๋Š”์ง€ ํ™•์ธํ•œ๋‹ค.
Local์—์„œ Backend๋ฅผ ๋Œ๋ฆฌ๋Š” ๋ฐฉ๋ฒ•

Local์—์„œ ๋Œ๋ฆฌ๊ธฐ ์ „์— ์•ˆ๋‚ด์‚ฌํ•ญ

  • Local์—๋Š” Nginx , uwsgi์™€ ๊ฐ™์€ ๋ฐฐํฌ ํˆด์ด ์„ค์น˜ ๋˜์–ด์žˆ์ง€ ์•Š์œผ๋ฉฐ ๊ณต๊ณต๊ธฐ๊ด€ API๋ฅผ ๋ฐ›์•„์˜ค๋Š” python ํŒŒ์ผ์€ ๊ตฌ์ถ•๋˜์–ด ์žˆ์ง€๋งŒ ์ด๋ฅผ ์ฃผ๊ธฐ์ ์œผ๋กœ ์‹คํ–‰์‹œํ‚ค๋Š” Crontab ๋งคํฌ๋กœ๊ฐ€ ์„ค์ •๋˜์–ด ์žˆ์ง€ ์•Š๋‹ค.

Local์—์„œ Backend๋ฅผ ๋Œ๋ฆฌ๋Š” ๋ฐฉ๋ฒ•

  1. git clone์„ ์ด์šฉํ•ด์„œ ์ฝ”๋“œ๋ฅผ ๋ฐ›์•„์˜จ ํ›„์— git checkout develop-backend ๋ธŒ๋žœ์น˜๋กœ ๋“ค์–ด๊ฐ„๋‹ค.

  2. ๋ฃจํŠธ ํด๋”์—์„œ NavyBottle/Backend/navybottle_django ์˜ requestments.txt๋ฅผ ์ด์šฉํ•ด์„œ python ๊ฐ€์ƒํ™˜๊ฒฝ์„ ์„ค์น˜ํ•œ๋‹ค.

  3. ๊ฐ€์ƒํ™˜๊ฒฝ์„ ์‹คํ–‰ํ•˜๊ณ  NavyBottle/Backend/navybottle_django ์œ„์น˜์—์„œ ๋‹ค์Œ ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•œ๋‹ค.

    python manage.py makemigrations
    python manage.py migrate
    
  4. DB๊ฐ€ ์„ฑ๊ณต์ ์œผ๋กœ migration ๋˜์—ˆ์œผ๋ฉด NavyBottle/Backend/navybottle_django/covid_pipline.py๋ฅผ ์‹คํ–‰ํ•œ๋‹ค (linux server์—์„œ๋Š” crontab์„ ์ด์šฉํ•ด์„œ ์ด ๊ณผ์ •์ด 30๋ถ„์— ํ•œ ๋ฒˆ์”ฉ ์ผ์–ด๋‚œ๋‹ค)

  5. ์„ฑ๊ณต์ ์œผ๋กœ ํŒŒ์ผ์ด ์‹คํ–‰ ๋˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜์—ฌ dJango์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•œ๋‹ค

    python manage.py runserver
    
  6. localhost:[ํฌํŠธ ๋ฒˆํ˜ธ]/covid/ ์˜ Rest API๋ฅผ postman์—์„œ ์ œ๋Œ€๋กœ ์ •๋ณด๊ฐ€ ๋ณด๋‚ด์ง€๋Š”์ง€ ํ™•์ธํ•œ๋‹ค

๐Ÿฅ Project Background:

2020.01.20 

๋Œ€ํ•œ๋ฏผ๊ตญ์— ์ฒซ ์ฝ”๋กœ๋‚˜ ํ™•์ง„์ž๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค. 7,8 ๊ฐœ์›” ์ดํ›„ ํ™•์‚ฐ์ด ์ „๊ตญ์œผ๋กœ ํ™•๋Œ€๋˜๋ฉด์„œ, ์ฝ”๋กœ๋‚˜19 ์ „๋‹ด ๊ฐ€์šฉ ๋ณ‘์ƒ ๋ฌธ์ œ๊ฐ€ ์กฐ๋ช…๋˜์—ˆ๋‹ค. 1๋…„์ด ์ง€๋‚œ ์˜ค๋Š˜๋‚ , ์•„์ง๋„ ๊ฐ€์šฉ ๋ณ‘์ƒ ๋ฌธ์ œ๋Š” ์™„์ „ํžˆ ํ•ด๊ฒฐ๋˜์ง€ ์•Š์•˜์œผ๋ฉฐ, ์—Ž์นœ๋ฐ ๋ฎ์นœ ๊ฒฉ์œผ๋กœ ๊ฐ€์šฉ ์˜๋ฃŒ์ธ๋ ฅ ๋ฐ ๋ฌผํ’ˆ ๋ถ€์กฑ๊ณผ ๋…ธ๋™ ํ™˜๊ฒฝ ์•…ํ™”์™€ ๊ฐ™์€ ๋ฌธ์ œ๋“ค๋„ ๋“ฑ์žฅํ•˜๊ณ  ์žˆ๋‹ค.

2021.08.11 

์•ฝ ์ผ์ฃผ์ผ ์ „์— ์ •๋ถ€๋Š” '์ฝ”๋กœ๋‚˜19 ํ™˜์ž ๋ฐฐ์ • ๊ฑฐ๋ถ€ ์น˜๋ฃŒ๋ณ‘์ƒ ๊ด€๋ฆฌ๋ฐฉ์•ˆ' ์„ ๋ฐœํ‘œํ•˜๋ฉด์„œ, ๋” ์ด์ƒ ๋ณ‘์›์—์„œ๋Š” ํ™˜์ž๋ฅผ ์˜๋ฃŒ์ธ๋ ฅ ์‚ฌ์œ ๋กœ ๊ฑฐ๋ถ€ํ•  ์ˆ˜๋„ ์—†์œผ๋ฉฐ, ์ˆ˜์šฉ๋Šฅ๋ ฅ์ด ๋ถ€์กฑํ•จ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ , ๋ฌด์กฐ๊ฑด์ ์œผ๋กœ ํ™˜์ž๋ฅผ ์ˆ˜์šฉํ•ด์•ผํ•˜๋Š” ์ƒํ™ฉ์— ์ด๋ฅด๋ €๋‹ค. ๊ทธ๋ฆฌํ•˜์—ฌ, ๋ณด๊ฑด์˜๋ฃŒ์ž์›์„ ํ†ตํ•ฉ๊ด€๋ฆฌํ•  ํ”Œ๋žซํผ ๋ฐ ๊ฑฐ๋ฒ„๋„Œ์Šค ๊ตฌ์ถ•์ด ์ ˆ์‹คํ•œ ์ƒํ™ฉ์ด๋‹ค.

image

2021.08.11 ์ฝ”๋กœ๋‚˜19 ํ™˜์ž ๋ฐฐ์ • ๊ฑฐ๋ถ€ ์น˜๋ฃŒ๋ณ‘์ƒ ๊ด€๋ฆฌ๋ฐฉ์•ˆ

๐Ÿฅ Project Summary:

ํŒ€ '๋„ค์ด๋น„ ๋ณดํ‹€'์˜ 'ํŒฌ๋ฐ๋ฏน ๋งค๋‹ˆ์ €' ๋Š” ํ˜ธ๋‚จ์ง€์—ญ ๋‚ด ๋ณ‘์›/์ƒํ™œ์น˜๋ฃŒ์„ผํ„ฐ์˜ ๊ฐ€์šฉ ๋ณ‘์ƒ ๋ฐ ์ธ๋ ฅ์— ๋Œ€ํ•œ ์ƒ์„ธ์ •๋ณด๋ฅผ ์ทจํ•ฉ ๋ฐ ์‹œ๊ฐํ™”ํ•˜์—ฌ ์ œ๊ณตํ•˜๋Š” ์„œ๋น„์Šค๋‹ค.

image

์ •๋ถ€์—์„œ ํ™˜์ž ๋ฐฐ์ • ํ˜น์€ ๋น ๋ฅด ์ „์›์„ ์œ„ํ•ด ๋ณ‘์›๊ณผ ์‹œ/๋„ ํ™˜์ž์ƒํ™ฉ์‹ค ๊ฐ„์˜ ์งํ†ต ์—ฐ๋ฝ๋ง์„ ๊ตฌ์ถ•ํ–ˆ์ง€๋งŒ, ์•„์ง ๋งŽ์ด ๋ถ€์กฑํ•œ ์ƒํƒœ๋‹ค. ์ฝ”๋กœ๋‚˜19 ํ™˜์ž๋ฅผ ๋ฐฐ์ •, ์ด์†ก, ์ „์›ํ•˜๋Š” ๊ณผ์ •์—์„œ ์ž”์—ฌ ๋ณ‘์ƒ ์œ„์น˜ ์กฐํšŒ๋ฅผ ์œ„ํ•˜์—ฌ, ๋ณ‘์› - ๋ณ‘์›, ๋ณ‘์› - ์‹œ/๋„ ์ƒํ™ฉ์‹ค, ์‹œ/๋„ ์ƒํ™ฉ์‹ค - ์ค‘์•™์‚ฌ๊ณ ์ˆ˜์Šต๋ณธ๋ถ€ ์™€ ๊ฐ™์€ ์—ฌ๋Ÿฌ ๋ฒˆ์˜ one by one contact์ด ๊ฐ•์ œ๋œ๋‹ค. ์ด ๊ณผ์ •์—์„œ ๋งŽ์€ ๋…ธ๋ ฅ์ด ํ•„์š”ํ•˜๋ฉฐ, ์˜๋ฃŒ์—…๋ฌด์—๋งŒ ๋ชฐ๋‘ํ•ด๋„ ๋ถ€์กฑํ•œ ์˜๋ฃŒ์ข…์‚ฌ์ž๊ฐ€ ์ „ํ™”๊ธฐ๋ฅผ ๋ถ™๋“ค๊ณ  ์žˆ๋Š” ์‹œ๊ฐ„์ด ๋Š˜์–ด๋‚˜๊ณ  ์žˆ๋‹ค.

๋ณธ ์„œ๋น„์Šค๋Š” ํ˜ธ๋‚จ์ง€๋ฅผ ๋‚ด ๋ณ‘์›, ์‹œ/๋„ ์ƒํ™ฉ์‹œ, ์ค‘์•™์‚ฌ๊ณ ์ˆ˜์Šต๋ณธ๋ถ€๋ฅผ ํƒ€๊ฒŸ์œผ๋กœ ํ•˜๊ณ  ์žˆ๋‹ค. ๋งŽ์€ ์—ฐ๋ฝ์„ ์„œ๋กœ ๊ฑฐ์ณ์„œ ์ˆ˜์ž‘์—…์œผ๋กœ, ์ž”์—ฌ ๋ณ‘์ƒ์„ ์กฐํšŒํ•˜๋Š” ์‹œ๊ฐ„์„ ์•„๋ผ๋ฉฐ, ํ˜ธ๋‚จ์ง€์—ญ ๋‚ด ์‹œ์„ค๋“ค์˜ ๊ฐ€๋™๋ฅ ์„ ํ•œ ํŽ˜์ด์ง€์— ๋‹จ๋ฒˆ์— ์•Œ์•„๋ณผ ์ˆ˜ ์žˆ๋Š” ์‚ฌ์ดํŠธ๋ฅผ ๊ฐœ๋ฐœํ•˜๊ณ ์ž ํ–ˆ๋‹ค. ์ฝ”๋กœ๋‚˜19 ํ™•์ง„์ž๋“ค์„ ๋ณ‘์ƒํ•˜๋Š” ์ฃผ์ฒด์—๊ฒŒ ์ด ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•จ์œผ๋กœ์จ, ๋ณ‘์ƒ ๊ฐ€๋™๋ฅ ์„ ๋†’์ด๊ณ , ํ˜ธ๋‚จ์ง€์—ญ ์‹œ๋ฏผ์˜ ์•ˆ์ „์„ ์ฆ์ง„์‹œํ‚ค๋Š” ํšจ๊ณผ๋ฅผ ๊ธฐ๋Œ€ํ•˜๊ณ  ์žˆ๋‹ค.

๐Ÿฅ Main service of 'Pandemic Manager':

  1. ์ง€์—ญ๋ณ„ ์ ‘๊ทผ:
ํ˜ธ๋‚จ์ง€์—ญ ๋‚ด ๊ด‘์ฃผ๊ด‘์—ญ์‹œ, ์ „๋ผ๋ถ๋„, ์ „๋ผ๋‚จ๋„ 3๊ฐœ์˜ ์ง€์—ญ ๋ชจ๋‘ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•˜๋ฉฐ ํ˜ธํ™˜๋œ๋‹ค.
  1. ์ง€์—ญํ˜„ํ™ฉ ์กฐํšŒ:
๊ฐ ์ง€์—ญ์— ์ ‘์†ํ•˜๊ฒŒ ๋˜๋ฉด, ํ™•์ง„์ž ์ˆ˜, ๊ฒฉ๋ฆฌ์ค‘, ์‚ฌ๋ง์ž ์ˆ˜์™€ ๊ฐ™์€ ์œ ์šฉํ•œ ์ •๋ณด๋ฅผ
๊ณต๊ณต๊ธฐ๊ด€ API๋ฅผ ํ† ๋Œ€๋กœ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ œ๊ณตํ•œ๋‹ค.
  1. ์ƒ์„ธ์ •๋ณด ์ฐฝ:
๊ฐ ์ง€์—ญ์˜ ์‹œ์„ค์—๋Š” ํ˜ผ์žก/์šฐ๋ ค/์›ํ™œ์„ ํ‘œ์‹œํ•˜๋Š ๋งˆ์ปค๊ฐ€ ์กด์žฌํ•˜๋ฉฐ, ๋งˆ์ปค๋ฅผ ํด๋ฆญํ•˜๋ฉด
๋ณ‘์› ๋ฐ ์ƒํ™œ์น˜๋ฃŒ์„ผํ„ฐ์˜ ์ฃผ์†Œ ๋ฐ ์ „ํ™”๋ฒˆํ˜ธ๋ถ€ํ„ฐ,์ฝ”๋กœ๋‚˜19 ์ „๋‹ด๋ณ‘์ƒ ์ข…๋ฅ˜๋ณ„ ์ž”์—ฌ ๋ณ‘์ƒ ๊ฐœ์ˆ˜, ๊ฐ€๋™๋ฅ , ์ธ๋ ฅ ๋“ฑ
์ˆ˜๋งŽ์€ ์ •๋ณด๋ฅผ ํ•œ ๋ฒˆ์— ์กฐํšŒํ•  ์ˆ˜ ์žˆ๋‹ค.
  1. ํ˜ผ์žก๋„ ๋žญํ‚น:
์ƒ์„ธ์ •๋ณด ์ฐฝ์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ† ๋Œ€๋กœ ํ˜ธ๋‚จ์ง€์—ญ ๋‚ด์—์„œ ๊ฐ€์žฅ ์›ํ™œํ•œ ์‹œ์„ค๋“ค์„ ์ •๋ ฌํ•œ ๋ฆฌ์ŠคํŠธ ๋˜ํ•œ ์ œ๊ณตํ•œ๋‹ค.

๐Ÿฅ Additional service:

  1. ํ™˜์ž ์ „์› ์ถ”์ฒœ ๊ธฐ๋Šฅ:
ํ™˜์ž ์ˆ˜์šฉ ๋Šฅ๋ ฅ์ด ๋ถ€์กฑํ•œ ๋ณ‘์› ๊ฐ™์€ ๊ฒฝ์šฐ์—๋Š”, ํ™˜์ž์˜ ์ƒํƒœ๋กœ ์ฝ”๋กœ๋‚˜19 ํ™˜์ž ๋ถ„๋ฅ˜ ๊ธฐ์ค€์— ๋”ฐ๋ผ ์œ„์ฆ/์ค‘์ฆ/๊ฒฝ์ฆ/๋ฌด์ฆ์ƒ ์ค‘ ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•˜๊ณ ,
ํ˜„์žฌ ์œ„์น˜๋ฅผ ์ž…๋ ฅํ•˜๋ฉด, ์ธ๊ทผ ๊ฐ€์žฅ ์›ํ™œํ•œ ์‹œ์„ค์„ ์ถ”์ฒœํ•ด์ค€๋‹ค.

๐Ÿฅ Tech Stack & More details:

  • Main(Frontend): React and Scss

    Backend: dJango

    More: using resftul API from Google Map & ๊ณต๊ณต๋ฐ์ดํ„ฐ ํฌํ„ธ

About


Languages

Language:JavaScript 66.7%Language:HTML 16.9%Language:CSS 9.1%Language:SCSS 7.3%