Skip to content

kimwoolina/wp.gg

Folders and files

NameName
Last commit message
Last commit date

Latest commit

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

Repository files navigation

header

Python Version Django Version DRF Version Channels channels-redis django-allauth dj-rest-auth djangorestframework-simplejwt Requests Redis OpenAI Python Client RIOT API Discord API WebSocket


๐Ÿ“– Navigation

  1. Introduction
  2. Setup
  3. ํ•ต์‹ฌ๊ธฐ๋Šฅ
  4. ์ ์šฉ๊ธฐ์ˆ 
  5. ERD
  6. Team

๐Ÿ‘€ Introduction

๋ฆฌ๊ทธ์˜ค๋ธŒ๋ ˆ์ „๋“œ ์œ ์ € ํ‰ํŒ ๊ด€๋ฆฌ ์›น์•ฑ

๐Ÿ—“ Duration

24.09.30 ~ing


๐Ÿ›  Setup

To set up and run the project, follow these steps:

  1. Clone the project repository:

    git clone https://github.com/kimwoolina/wp.gg.git
  2. Navigate to the project directory:

    cd /Users/YourPC/Your_Cloned_Folder/
  3. Install the required dependencies:

    pip install -r requirements.txt
  4. Create and configure the config.py file:

    Create a file named config.py in the project root directory and add the following content:

    # config.py
    
    DJANGO_SECRET_KEY = "your_django_secret_key_here"
    RIOT_API_KEY = "your_riot_api_key_here"
    OPENAI_API_KEY = "your_openai_api_key_here"
    DISCORD_CLIENT_ID = 'your_discord_client_id_here'
    DISCORD_SECRET_ID = 'your_discord_secret_id_here'
    DISCORD_OAUTH2_URL = 'your_discord_oauth2_url_here'
  5. Apply database migrations:

    python manage.py makemigrations
    python manage.py migrate
  6. Run the development server:

    python manage.py runserver
  7. Open your browser and visit:

    http://127.0.0.1:8000/


ํ•ต์‹ฌ ๊ธฐ๋Šฅ

๐Ÿ›ก OAuth2 ์†Œ์…œ๋กœ๊ทธ์ธ (Riot, Discord)

  • Riot๊ณผ Discord๋ฅผ ํ†ตํ•œ ๊ฐ„ํŽธ ๋กœ๊ทธ์ธ์„ ๊ตฌํ˜„ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. (Riot Client Secret ๋ฐœ๊ธ‰ ๋ฌธ์ œ๋กœ ๋ผ์ด์—‡ ๊ณ„์ • ๋กœ๊ทธ์ธ ๊ด€๋ จ ๊ธฐ๋Šฅ์€ 1์ฐจ ๋ฐฐํฌ ํ›„์— ์ถ”๊ฐ€ ์˜ˆ์ •.)
  • ์•ฑ ๋‹น ํ•˜๋‚˜์˜ ๊ณ„์ •๋งŒ ์—ฐ๊ฒฐ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
  • ๋งˆ์ดํŽ˜์ด์ง€์—์„œ ์—ฐ๊ฒฐ๋œ ์•ฑ์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์—ฐ๊ฒฐ ํ•ด์ œ๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
  • ์—ฐ๋™๋œ ๋ผ์ด์—‡ ๊ณ„์ •์„ ํ†ตํ•œ ๋ผ์ด์—‡ ์œ ์ € ์ •๋ณด(์„ ํ˜ธ ์ฑ”ํ”ผ์–ธ, ํ‹ฐ์–ด ๋“ฑ)๋ฅผ ๋ถˆ๋Ÿฌ์˜ต๋‹ˆ๋‹ค.
๋ฏธ๋ฆฌ๋ณด๊ธฐ
แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2024-10-08 แ„‹แ…ฉแ„Œแ…ฅแ†ซ 3 30 16 แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2024-10-11 แ„‹แ…ฉแ„Œแ…ฅแ†ซ 12 32 13

๐Ÿ‘ฌ AI๋ฅผ ํ†ตํ•œ ์œ ์ € ์ถ”์ฒœ ๊ธฐ๋Šฅ

  • LLM์„ ํ™œ์šฉํ•˜์—ฌ ์œ ์ €๋“ค์— ๋Œ€ํ•œ ๋ฆฌ๋ทฐ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•ฉ๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๊ฐ€ ์„ ํ˜ธํ•˜๋Š” ํŠน์ง•๊ณผ ๊ฐ€์žฅ ๋ถ€ํ•ฉํ•˜๋Š” ํ‰๊ฐ€๋ฅผ ๊ฐ€์ง„ ์œ ์ €์™€ ๋งค์นญํ•ด์ค๋‹ˆ๋‹ค.
  • ์œ ์ €๋“ค์ด ๋งŽ์ด ๊ฒ€์ƒ‰ํ•œ ํ•ญ๋ชฉ์€ ์„ ํƒ ํ•ญ๋ชฉ์— ์ž๋™์œผ๋กœ ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค.
๋ฏธ๋ฆฌ๋ณด๊ธฐ
แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2024-10-08 แ„‹แ…ฉแ„Œแ…ฅแ†ซ 3 49 01

๐Ÿ’ฌ WebSocket์„ ํ™œ์šฉํ•œ ์‹ค์‹œ๊ฐ„ ์ฑ„ํŒ…

  • ์‹ค์‹œ๊ฐ„ ์ฑ„ํŒ…์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
  • ์ตœ๊ทผ์— ๋Œ€ํ™”๊ฐ€ ์ด๋ฃจ์–ด์ง„ ์ˆœ์„œ๋Œ€๋กœ ์ฑ„ํŒ…๋ฐฉ์ด ๋ณด์—ฌ์ง‘๋‹ˆ๋‹ค.
  • ์ฑ„ํŒ… ๋‚ด์—ญ์ด ๊ธฐ๋ก๋˜๋ฉฐ ์ด์ „์— ํ•œ ์ฑ„ํŒ…์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ฐ ์ฑ„ํŒ…์€ ์ฑ„ํŒ…๋ฐฉ ๋ณ„๋กœ ๊ตฌ๋ถ„๋ฉ๋‹ˆ๋‹ค.
  • ์ผ๋Œ€์ผ ์ฑ„ํŒ…๊ณผ ๊ทธ๋ฃน ์ฑ„ํŒ…์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.
๋ฏธ๋ฆฌ๋ณด๊ธฐ
แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2024-10-08 แ„‹แ…ฉแ„Œแ…ฅแ†ซ 3 54 58

๐Ÿ”” ์‹ค์‹œ๊ฐ„ ์•Œ๋ฆผ

  • ์‹ค์‹œ๊ฐ„ ์ฑ„ํŒ…์ด ์˜ค๋ฉด ์‹ค์‹œ๊ฐ„ ์•Œ๋ฆผ์„ ์ œ๊ณตํ•˜๋ฉฐ ์•Œ๋ฆผ์„ ํด๋ฆญํ•˜๋ฉด ํ•ด๋‹น ์ฑ„ํŒ…๋ฐฉ์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.
  • ์•ˆ์ฝ์€ ์•Œ๋ฆผ ๊ฐœ์ˆ˜ ๋งŒํผ ํ™”๋ฉด์— ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  • ์•ˆ์ฝ์€ ์•Œ๋ฆผ์ด 50๊ฐœ ์ด์ƒ์ธ ๊ฒฝ์šฐ์—” 50+๊ฐœ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  • ์•ˆ์ฝ์€ ์•Œ๋ฆผ์„ ํด๋ฆญํ•˜๋ฉด ์ฝ์Œ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  • ๋ชจ๋‘ ์ฝ์Œ ์ฒ˜๋ฆฌ ๊ธฐ๋Šฅ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
๋ฏธ๋ฆฌ๋ณด๊ธฐ
แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2024-10-08 แ„‹แ…ฉแ„Œแ…ฅแ†ซ 3 35 45 แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2024-10-08 แ„‹แ…ฉแ„Œแ…ฅแ†ซ 3 34 39

๐Ÿ“ข ์‹ ๊ณ  ๊ธฐ๋Šฅ

  • ์œ ์ €๋Š” ์ฑ„ํŒ… ๋‚ด์šฉ์— ๋ถ€์ ์ ˆํ•œ ๋‚ด์šฉ์ด ์žˆ์„ ๊ฒฝ์šฐ, ํ•ด๋‹น ์ฑ„ํŒ…์„ ์‹ ๊ณ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ธˆ์ง€์–ด๋ฅผ ์ฑ„ํŒ…์—์„œ ์ž…๋ ฅํ•œ ์œ ์ €๋Š” ์ฃผ์˜ ๋Œ€์ƒ์œผ๋กœ ๋ถ„๋ฅ˜๋˜์–ด ์ผ์ • ์‹œ๊ฐ„๋™์•ˆ ์ฑ„ํŒ…์ด AI์˜ ๊ฒ€์ˆ˜๋ฅผ ๋ฐ›๊ณ  ํ•„ํ„ฐ๋ง ๋˜์–ด ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.
  • ๋ณธ์ธ์€ ๋ณธ์ธ์„ ์‹ ๊ณ ํ•  ์ˆ˜ ์—†์œผ๋ฉฐ ๊ฐ™์€ ๊ฑด์˜ ์‹ ๊ณ ์— ๋Œ€ํ•ด์„œ๋Š” ๊ณ„์ • ํ•˜๋‚˜๋‹น 1ํšŒ๋กœ ์ œํ•œ๋ฉ๋‹ˆ๋‹ค.
  • ์‹ ๊ณ ๊ฐ€ ๋“ค์–ด์˜ค๋ฉด ๊ด€๋ฆฌ์ž๊ฐ€ ํ™•์ธํ•˜๊ฒŒ ๋˜๋ฉฐ, ๊ด€๋ฆฌ์ž์˜ ๊ฒ€์ˆ˜ ํ›„ ํŒจ๋„ํ‹ฐ ๋Œ€์ƒ์œผ๋กœ ๋ถ„๋ฅ˜๋œ ์œ ์ €๋Š” ์ผ์ • ์‹œ๊ฐ„๋™์•ˆ ๊ณ„์ • ์‚ฌ์šฉ์ด ๊ธˆ์ง€๋ฉ๋‹ˆ๋‹ค.
๋ฏธ๋ฆฌ๋ณด๊ธฐ
แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2024-10-08 แ„‹แ…ฉแ„Œแ…ฅแ†ซ 3 55 50 แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2024-10-08 แ„‹แ…ฉแ„Œแ…ฅแ†ซ 3 52 31

๐Ÿ’ธ ํฌ๋ ˆ๋”ง ๊ธฐ๋Šฅ

  • ์œ ์ €๋Š” ํ•˜๋ฃจ์— 5๊ฐœ๊นŒ์ง€์˜ ์œ ์ € ์ƒ์„ธ ๋ฆฌ๋ทฐ๋ฅผ ํฌ๋ ˆ๋”ง ์ฐจ๊ฐ ์—†์ด ์กฐํšŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํ•˜๋ฃจ์— 6๋ฒˆ์งธ ๋ฆฌ๋ทฐ๋ถ€ํ„ฐ๋Š” ํ•œ๊ฐœ์˜ ๋ฆฌ๋ทฐ๋‹น 50๊ฐœ์˜ ํฌ๋ ˆ๋”ง์ด ์ฐจ๊ฐ๋ฉ๋‹ˆ๋‹ค.
  • ํ•œ๋ฒˆ ์กฐํšŒํ•œ ๋ฆฌ๋ทฐ๋Š” ํ•˜๋ฃจ๋™์•ˆ ๋ฌด์ œํ•œ์œผ๋กœ ํฌ๋ ˆ๋”ง ์ฐจ๊ฐ์—†์ด ์กฐํšŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํฌ๋ ˆ๋”ง ์ถ”๊ฐ€ ๊ฒฐ์ œ๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ, ๊ด‘๊ณ ๋ฅผ ๋ณด๋ฉด ํฌ๋ ˆ๋”ง์„ ์–ป์„ ์ˆ˜ ์žˆ๊ฒŒํ•ฉ๋‹ˆ๋‹ค.
๋ฏธ๋ฆฌ๋ณด๊ธฐ
แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2024-10-08 แ„‹แ…ฉแ„Œแ…ฅแ†ซ 4 02 30



๐Ÿ—‚ ERD

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2024-10-08 แ„‹แ…ฉแ„’แ…ฎ 12 56 04



๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ Team

Name GitHub Handle Responsibilities
Woolin Kim๐Ÿ‘‘ @kimwoolina ์†Œ์…œ ๋กœ๊ทธ์ธ ์—ฐ๋™, ๋ผ์ด์—‡ API ์‚ฌ์šฉ, ์œ ์ € ์ถ”์ฒœ ๊ธฐ๋Šฅ(LLM ํ™œ์šฉ), ์œ ์ € ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ ๋“ฑ
Saeye Lee @saeye ํšŒ์›, ์ฑ„ํŒ…, ์‹ ๊ณ  ๊ด€๋ จ ๊ธฐ๋Šฅ , ๋น„ํ•˜๋ฐœ์–ธ ๊ฐ์ง€ ๊ธฐ๋Šฅ(LLM) ๋“ฑ
Nahee Kim @sptcnl ๋ฆฌ๋ทฐ, ๋Œ“๊ธ€, ํฌ๋ ˆ๋”ง(๊ฒฐ์ œ) ๊ด€๋ จ ๊ธฐ๋Šฅ ๋“ฑ
Minseong Jeon @Oztalun ํŒŒํ‹ฐ ๊ด€๋ จ ๊ธฐ๋Šฅ (ํŒ€ ์ƒ์„ฑ, ๋ฐฉ์žฅ ๊ต์ฒด, ํŒ€์› ๋‚ด๋ณด๋‚ด๊ธฐ, ํŒ€ ์‚ญ์ œ ๋“ฑ)