Skip to content

2021-Team-E/Mandoo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

ํ•œ๊ตญ์–ด | English


โœ QUIZMAKER

๋ณธ ํ”„๋กœ์ ํŠธ๋Š” 'Handshaker' ์‚ฌ์—…์˜ ์ผ๋ถ€ ํ”„๋กœํ† ํƒ€์ž… ์ œ์ž‘์„ ์œ„ํ•ด ์ง„ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
๐Ÿ’ก ํ•ด๋‹น ํŽ˜์ด์ง€ ๋งํฌ: QUIZMAKER

  • ํ•™์Šต์ง€ ์ด๋ฏธ์ง€ ๋ฐ์ดํ„ฐ์—์„œ ๋ฌธํ•ญ์ •๋ณด๋ฅผ ์ถ”์ถœํ•ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ ํ›„ ํ•ด๋‹น ๋‚ด์šฉ์„ ์‚ฌ์šฉ์ž์˜ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ ‘์† ๊ฐ€๋Šฅํ•˜๋„๋กํ•˜๋Š” ํ”Œ๋žซํผ

1๏ธโƒฃ ํ•™์Šต ๋ฌธ์ œ์˜ ์ด๋ฏธ์ง€๋ฅผ ์—…๋กœ๋“œ ๋ฐฉ์‹์œผ๋กœ ๋“ฑ๋กํ•œ๋‹ค.

quizmaker_imageupload


2๏ธโƒฃ ํ•™์Šต์ง€ ์ด๋ฏธ์ง€ ๋ฐ์ดํ„ฐ์—์„œ ๋”ฅ๋Ÿฌ๋‹์„ ์ด์šฉํ•˜์—ฌ ๋ฌธํ•ญ์ •๋ณด๋ฅผ ์ถ”์ถœํ•œ๋‹ค.

quizmaker_imageupload


โ–ถ ๊ฒฐ๊ณผ

quizmaker_gif


๐Ÿ“Œ System Architecture


๐Ÿ›  Tech Stack

โ–ถ Tech Stack ์„ ์ • ์ด์œ 

๋ถ„๋ฅ˜ ๊ธฐ์ˆ 
๊ฐœ๋ฐœํ™˜๊ฒฝ NHN S3 Docker
Frontend react Javascript Bootstrap axios Styled-components
Backend Flask Python Gunicorn Postman Swagger
DB MongoDB
Deep learning Pytorch Colab Yolov5
Etc Nginx github VScode AWS Prometheus Grafana

๐Ÿงฟ PORTS

Name Port Description
Nginx 80 ๊ฐ€๋ฒผ์›€๊ณผ ๋†’์€ ์„ฑ๋Šฅ์„ ๋ชฉํ‘œ๋กœ ํ•˜๋Š” ์›น์„œ๋ฒ„๋กœ ์„œ๋ฒ„๋กœ์„œ์˜ ์—ญํ• ๊ณผ ํ”„๋ก์‹œ๋กœ์„œ์˜ ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
React(on Nginx) 80, 3000 ํ•™์Šต ๋ฌธ์ œ์˜ ์ด๋ฏธ์ง€๋ฅผ ์—…๋กœ๋“œ ๋ฐฉ์‹์œผ๋กœ ๋“ฑ๋กํ•˜๋ฉด, ํ•ด๋‹น ๋ฌธ์ œ์˜ ๋ฌธํ•ญ๋‚ด์šฉ, ๋ณด๊ธฐ, ์„ ์ง€๋ฅผ ๋ถ„๋ฅ˜ํ•˜์—ฌ ํ…์ŠคํŠธ ๋ฐ ์ด๋ฏธ์ง€๋กœ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” UI๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
Flask + Gunicorn 8000, 5000 QUIZRIX์˜ ์„œ๋ฒ„. ๋ชจ๋“  ํ–‰๋™์˜ ์ค‘์‹ฌ์— ์œ„์น˜ํ•˜์—ฌ ์›น์„œ๋ฒ„, Cloud Storage, DB ๊ฐ„์˜ ์†Œํ†ต์„ ๋‹ด๋‹นํ•ฉ๋‹ˆ๋‹ค.
Mongo DB 27017 Database
Grafana 3001 cAdvisor, Prometheus, NodeExporter๋ฅผ ํ†ตํ•ด ์ „๋‹ฌ๋ฐ›์€ ์‹œ๊ฐ„๋ณ„ ๋งคํŠธ๋ฆญ ๋ฐ์ดํ„ฐ๋ฅผ ์‹œ๊ฐํ™”ํ•˜์—ฌ ๋Œ€์‹œ๋ณด๋“œ๋กœ ์ œ๊ณตํ•ด์ค๋‹ˆ๋‹ค.
cAdvisor 8080 ์‚ฌ์šฉ์ค‘์ธ ๋„์ปค ์ปจํ…Œ์ด๋„ˆ์˜ ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉ๋Ÿ‰์„ ์ธก์ •ํ•˜์—ฌ ์‹œ๊ณ„์—ด ๋งคํŠธ๋ฆญ ๋ฐ์ดํ„ฐํ™”ํ•ฉ๋‹ˆ๋‹ค.
Prometheus 9090 cAdvisor, node exporter์˜ ์‹œ๊ณ„์—ด ๋งคํŠธ๋ฆญ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•˜์—ฌ ์‹œ์Šคํ…œ ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐ ๊ฒฝ๊ณ ํ•ฉ๋‹ˆ๋‹ค.
Node Exporter 9100 ์„œ๋ฒ„์˜ cpu, ๋ฉ”๋ชจ๋ฆฌ, ๋””์Šคํฌ, ๋„คํŠธ์›Œํฌ ์‚ฌ์šฉ๋Ÿ‰๋“ฑ ํ˜ธ์ŠคํŠธ ๊ด€๋ จ ๋งคํŠธ๋ฆญ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•˜์—ฌ api๋กœ ๋…ธ์ถœ์‹œํ‚ต๋‹ˆ๋‹ค.

๐Ÿ“‘ Swagger

QUIZMAKER Swagger Hub link

swagger


๐Ÿฆพ AI

โœ” flow

flow


โœ” ๊ฒฐ๊ณผ

  • Model 1

    model1
  • Model 2

    model2

๐Ÿ“‹ File Tree

๐Ÿ“ฆMandoo
โ”ฃ ๐Ÿ“‚alertmanager
โ”ƒ โ”— ๐Ÿ“œconfig.yml              // alert manager config file
โ”ฃ ๐Ÿ“‚backend
โ”ƒ โ”ฃ ๐Ÿ“‚models                  // YOLO v5
โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚hub
โ”ƒ โ”ฃ ๐Ÿ“‚utils                   // YOLO v5
โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚aws
โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚flask_rest_api
โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚google_app_engine
โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚wandb_logging
โ”ƒ โ”ฃ ๐Ÿ“œDockerfile              // flask_app container included in docker-compose.yml
โ”ƒ โ”ฃ ๐Ÿ“œREADME.md
โ”ƒ โ”ฃ ๐Ÿ“œapp.py                  // Flask server
โ”ƒ โ”ฃ ๐Ÿ“œchoice5_bestweight.pt   // Pretrained Pytorch weights (answer to 5 choices)
โ”ƒ โ”ฃ ๐Ÿ“œdetection.py            // Detect input image
โ”ƒ โ”ฃ ๐Ÿ“œdevelopment.py          // Jwt key, algorithm for development
โ”ƒ โ”ฃ ๐Ÿ“œkakaoOcr.py             // extract text
โ”ƒ โ”ฃ ๐Ÿ“œmodelv2.0.pt            // Pretrained Pytorch weights (image to question/content/answer)
โ”ƒ โ”— ๐Ÿ“œrequirements.txt
โ”ฃ ๐Ÿ“‚frontend
โ”ƒ โ”ฃ ๐Ÿ“‚node_modules
โ”ƒ โ”ฃ ๐Ÿ“‚public
โ”ƒ โ”ฃ ๐Ÿ“‚src
โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚components
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚Modals              // image select modal
โ”ƒ โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œModal.css
โ”ƒ โ”ƒ โ”ƒ โ”ƒ โ”— ๐Ÿ“œModal.js
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œBlankTop.js         // Margin between components
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œButton.js           // Button component
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œHeader.css
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œHeader.js           // Page Header
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œlogo.PNG            // Project Logo
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œSearch.js           // Table Search Function
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œTable.js            // Main Page Table
โ”ƒ โ”ƒ โ”ƒ โ”— ๐Ÿ“œTableCell.js        // Tabel Cell hover
โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚pages
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œimgIcon.png         // Modal Icon
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œLoader.js           // Loading Page
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œLogin.js            // Login Page
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œloginLogo.PNG       // Project Logo
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œMainPage.js         // MainPage
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œnoLogin.PNG         // noLogin Page
โ”ƒ โ”ƒ โ”ƒ โ”— ๐Ÿ“œSignup.js           // Signup Page
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œApp.js              // pages components manage
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œconfig.js
โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œindex.css
โ”ƒ โ”ƒ โ”— ๐Ÿ“œindex.js
โ”ƒ โ”ฃ ๐Ÿ“œDockerfile              // react container included in docker-compose.yml
โ”ƒ โ”— ๐Ÿ“œREADME.md 
โ”ฃ ๐Ÿ“‚grafana
โ”ƒ โ”ฃ ๐Ÿ“‚provisioning
โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“‚dashboards
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œdashboard.yml       // dashboard provider config file
โ”ƒ โ”ƒ โ”ƒ โ”ฃ ๐Ÿ“œDocker Prometheus Monitoring.json  // monitoring general information
โ”ƒ โ”ƒ โ”ƒ โ”— ๐Ÿ“œFlaskApp_Monitoring.json           // monitoring Flask Application API
โ”ƒ โ”ƒ โ”— ๐Ÿ“‚datasources
โ”ƒ โ”ƒ โ”ƒ โ”— ๐Ÿ“œdatasource.yml      // admin config file
โ”ƒ โ”— ๐Ÿ“œconfig.monitoring
โ”ฃ ๐Ÿ“‚nginx
โ”ƒ โ”— ๐Ÿ“œnginx.conf              // nginx default config file
โ”ฃ ๐Ÿ“‚prometheus
โ”ƒ โ”ฃ ๐Ÿ“œalert.rules             // alert.rule config file
โ”ƒ โ”— ๐Ÿ“œprometheus.yml          // prometheus config file
โ”ฃ ๐Ÿ“œ.gitignore
โ”ฃ ๐Ÿ“œdocker-compose.yml        // multi container application(Dockerfile) build file
โ”ฃ ๐Ÿ“œLICENSE
โ”ฃ ๐Ÿ“œREADME.md
โ”— ๐Ÿ“œREADME_en.md

๐Ÿ”‘ Installation

Deploy

๐ŸŽก Github

  • Clone Repository

    git clone https://github.com/2021-Team-E/Mandoo.git

โ„ Front-end setting

  • package.json

    {
      ...
    
      "proxy": "http://<ip>:<server_port>",
    
      ...
    }
  • config.js

    export const USER_SERVER = "http://<ip>:<server_port>";

๐ŸŒถ Back-end Setting

  • app.py

    mongo = MongoClient('mongo_db', 27017)
  • requirements.txt
    Dockerfile์—์„œ ๋”ฐ๋กœ ์„ค์น˜ํ•˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ฃผ์„์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

    # requirements.txt
    
    ...
    
    # tesseract-ocr
    # pytesseract
    
    โ€ฆ
    
  • s3.py <โ€” Make new file name 's3.py' in ./Backend

    AWS_ACCESS_KEY = <AWS ACCESS KEY>
    AWS_SECRET_KEY = <AWS SECRET KEY>
    BUCKET_NAME = <AWS S3 bucket name>
    APPKEY = <Kakao API>

๐Ÿณ Docker

docker-compose up โ€”-build

๐ŸŽก Git Convention

Git-Flow

  • master : ์ œํ’ˆ์œผ๋กœ ์ถœ์‹œ๋  ์ˆ˜ ์žˆ๋Š” ๋ธŒ๋žœ์น˜
  • develop : ๋‹ค์Œ ์ถœ์‹œ ๋ฒ„์ „์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋ธŒ๋žœ์น˜
  • feature : ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•˜๋Š” ๋ธŒ๋žœ์น˜
  • release : ์ด๋ฒˆ ์ถœ์‹œ ๋ฒ„์ „์„ ์ค€๋น„ํ•˜๋Š” ๋ธŒ๋žœ์น˜
  • hotfix : ์ถœ์‹œ ๋ฒ„์ „์—์„œ ๋ฐœ์ƒํ•œ ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ • ํ•˜๋Š” ๋ธŒ๋žœ์น˜

Process

  • ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ feature ๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑํ•  ๋•Œ ๋ธŒ๋žœ์น˜ ์ด๋ฆ„์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ทœ์น™์œผ๋กœ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  • feature ๋ธŒ๋žœ์น˜๋Š” ๋งˆ์ง€๋ง‰ develop ๋ธŒ๋žœ์น˜๋กœ๋ถ€ํ„ฐ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  • ๊ผญ ๋ธŒ๋žœ์น˜๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์ „์— develop ๋ธŒ๋žœ์น˜๋ฅผ pull ๋ฐ›์Šต๋‹ˆ๋‹ค.

Branches ๋ช… example

  • feature-user (์‚ฌ์šฉ์ž ๊ด€๋ จ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๋Š” feature branch)

โœ” Commit message

์ปค๋ฐ‹ ๋ฉ”์„ธ์ง€๋ฅผ ์ž‘์„ฑํ•  ๋•Œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ทœ์น™์œผ๋กœ ์ผ๊ด€์„ฑ ์žˆ๊ฒŒ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

1. Commit Message Structure

๊ธฐ๋ณธ์ ์œผ๋กœ ์ปค๋ฐ‹ ๋ฉ”์„ธ์ง€๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด ์ œ๋ชฉ / ๋ณธ๋ฌธ / ๊ผฌ๋ฆฌ๋ง๋กœ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

type : subject

body

2. Commit Type

  • feat : ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • fix : ๋ฒ„๊ทธ ์ˆ˜์ •, ๊ธฐ๋Šฅ ์ˆ˜์ •
  • docs : ๋ฌธ์„œ ์ˆ˜์ •
  • refactor : ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง (๋ณ€์ˆ˜๋ช… ์ˆ˜์ • ๋“ฑ)
  • test : ํ…Œ์ŠคํŠธ ์ฝ”๋“œ, ๋ฆฌํŒฉํ† ๋ง ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€
  • style : ์ฝ”๋“œ ์Šคํƒ€์ผ ๋ณ€๊ฒฝ, ์ฝ”๋“œ ์ž์ฒด ๋ณ€๊ฒฝ์ด ์—†๋Š” ๊ฒฝ์šฐ, ์ฃผ์„ ์ถ”๊ฐ€
  • remove : ํŒŒ์ผ ๋˜๋Š” ์ฝ”๋“œ, ๋ฆฌ์†Œ์Šค ์ œ๊ฑฐ
  • resource : ์ด๋ฏธ์ง€ ๋ฆฌ์†Œ์Šค, prefab ๋“ฑ์˜ ์ฝ”๋“œ์™€ ์ƒ๊ด€์—†๋Š” ๋ฆฌ์†Œ์Šค ์ถ”๊ฐ€

3. Subject

  • ์ œ๋ชฉ์€ 50์ž๋ฅผ ๋„˜๊ธฐ์ง€ ์•Š๊ณ , ๋Œ€๋ฌธ์ž๋กœ ์ž‘์„ฑํ•˜๊ณ  ๋งˆ์นจํ‘œ๋ฅผ ๋ถ™์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ๊ณผ๊ฑฐ์‹œ์ œ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ๋ช…๋ น์–ด๋กœ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์‹œ

feat : Add translation to missing strings
feat : Disable publishing
feat : Sort list context menu
feat : Resize minimize/delete handle icons so they take up the entire topbar
fix : Fix typo in cleanup.sh file

4. Body

  • ์„ ํƒ์‚ฌํ•ญ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ชจ๋“  ์ปค๋ฐ‹์— ๋ณธ๋ฌธ๋‚ด์šฉ์„ ์ž‘์„ฑํ•  ํ•„์š”๋Š” ์—†์Šต๋‹ˆ๋‹ค.
  • ๋ถ€์—ฐ์„ค๋ช…์ด ํ•„์š”ํ•˜๊ฑฐ๋‚˜ ์ปค๋ฐ‹์˜ ์ด์œ ๋ฅผ ์„ค๋ช…ํ•  ๊ฒฝ์šฐ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.
  • ์ œ๋ชฉ๊ณผ ๊ตฌ๋ถ„๋˜๊ธฐ ์œ„ํ•ด ํ•œ์นธ์„ ๋„์›Œ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.
  • ๊ฐ ์ค„์€ 72์ž๋ฅผ ๋„˜๊ธฐ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ๋ณธ๋ฌธ์€ ๊ผญ ์˜์–ด๋กœ ์ž‘์„ฑํ•  ํ•„์š”๋Š” ์—†์Šต๋‹ˆ๋‹ค.

โœ” git rebase

์›๊ฒฉ ์ €์žฅ์†Œ์— Pull Requestํ•˜๊ธฐ ์ „ ํ”„๋กœ์ ํŠธ์˜ ํžˆ์Šคํ† ๋ฆฌ๋ฅผ ๋‹ค๋“ฌ์Šต๋‹ˆ๋‹ค.
rebase ๋ฅผ ์‹œํ–‰ํ•˜๊ธฐ ์ „ ์›๊ฒฉ์ €์žฅ์†Œ์—์„œ develop ๋ธŒ๋žœ์น˜๋ฅผ pull ๋ฐ›์•„ ์›๊ฒฉ ์ €์žฅ์†Œ์— ๊ทธ๋™์•ˆ ๋ฐ˜์˜๋œ ์ปค๋ฐ‹์„ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

git checkout develop
git pull

ํ˜„์žฌ ์ž‘์—…์ค‘์ธ feature ๋ธŒ๋žœ์น˜์˜ ์ปค๋ฐ‹์„ develop ์— rebase ํ•˜๊ธฐ

git rebase develop feature/feature1

๐Ÿ’ก ์ฃผ์˜

์ด๋ฏธ ์›๊ฒฉ ์ €์žฅ์†Œ์— pushํ•œ ์ปค๋ฐ‹์€ ์ ˆ๋Œ€ rebaseํ•˜๋ฉด ์•ˆ๋ฉ๋‹ˆ๋‹ค.

Rebase๋Š” ๊ธฐ์กด์˜ ์ปค๋ฐ‹์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๋‚ด์šฉ์€ ๊ฐ™์ง€๋งŒ ๋‹ค๋ฅธ ์ปค๋ฐ‹์„ ์ƒˆ๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

๐Ÿ‘ช Members

์ด๋ฆ„ ๊ฐœ๋ฐœ๋ถ„์•ผ ๋‹ด๋‹น ์†Œ๊ฐœํŽ˜์ด์ง€
๐Ÿฆฆ์ตœ์œค์žฌ Front-end, Back-end, Deep learning Web development,API Design, Data Engineering ๊ฐœ์ธ ๋ฆฌํฌ๋กœ ์ด๋™
๐Ÿฅ์ด์ฑ„๋ฆผ Front-end, Devops Web development, Docker ๊ฐœ์ธ ๋ฆฌํฌ๋กœ ์ด๋™
๐Ÿฆฉ๋ฐ•์‹ ์˜ Front-end, Deep learning Web development, Algorithm ๊ฐœ์ธ ๋ฆฌํฌ๋กœ ์ด๋™
๐Ÿน์ดํ•˜์˜ Back-end, Deep learning API Design, Data Engineering ๊ฐœ์ธ ๋ฆฌํฌ๋กœ ์ด๋™
๐Ÿฆ‰Ryan Lee Deep learning Algorithm ๊ฐœ์ธ ๋ฆฌํฌ๋กœ ์ด๋™
๐Ÿข๋ฐ•๊ทผ์šฐ Devops Cloud, Docker, Data Monitoring ๊ฐœ์ธ ๋ฆฌํฌ๋กœ ์ด๋™

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published