Skip to content

πŸ•―οΈ μ—°λ“±: 각자의 λΆˆλΉ›μ„ λͺ¨μ•„ κ±°λŒ€ν•œ ν–‰λ™μ˜ 물결둜, μ—°λŒ€ν™œλ™μ„ μ—°κ²°ν•˜λŠ” ν”Œλž«νΌ (FE)

Notifications You must be signed in to change notification settings

sm-solux/30th_2_WebBeing_yeondeung_front

Β 
Β 

Repository files navigation

πŸ•―οΈ μ—°λ“± - ν”„λ‘ νŠΈμ—”λ“œ λ ˆν¬μ§€ν† λ¦¬

γ€”  οΌΌβ”‚/  〕   흩어진 μ—°λŒ€λ₯Ό μž‡λŠ” λ”°λœ»ν•œ λΆˆλΉ›
(  μ—°  λ“±  )   μ—°λŒ€ ν™œλ™ μ •λ³΄μ˜ λͺ¨λ“  것, 
 "*. __ .*"    μ§€κΈˆ λ°”λ‘œ [μ—°λ“±]μ—μ„œ ν™•μΈν•˜μ„Έμš”.

πŸ‘₯ νŒ€μ› μ†Œκ°œ

κΉ€μ—°μ•„ 심세희
FE Lead FE
@yakim12 @sehui516
πŸ”Ž πŸ”Ž

πŸ› οΈ 기술 μŠ€νƒ (Tech Stack)

Category Technology Reason
πŸ—οΈ Framework μ»΄ν¬λ„ŒνŠΈ 기반 UI 개발 및 μž¬μ‚¬μš©μ„± κ·ΉλŒ€ν™”
πŸ“˜ Language 정적 타이핑을 ν†΅ν•œ λŸ°νƒ€μž„ μ—λŸ¬ λ°©μ§€ 및 μœ μ§€λ³΄μˆ˜ 생산성 ν–₯상
🎨 Styling ν‘œμ€€ μŠ€νƒ€μΌ μ‹œνŠΈλ₯Ό ν™œμš©ν•œ μœ μ—°ν•˜κ³  직관적인 UI λ””μžμΈ κ΅¬ν˜„
⚑ BaaS / Auth 비동기 ν˜ΈμŠ€νŒ… ν™˜κ²½μ„ λΉ λ₯΄κ²Œ κ΅¬μ„±ν•˜κ³  배포 νŽΈμ˜μ„±μ„ 높이기 μœ„ν•΄ μ‚¬μš©
πŸš€ CI / CD ν…ŒμŠ€νŠΈ 및 λΉŒλ“œ μžλ™ν™”μ™€ 지속적 톡합 / 배포 ν™˜κ²½ ꡬ성

🧩 μ‹œμŠ€ν…œ μ•„ν‚€ν…μ²˜

flowchart TD
    %% --- λ””μžμΈ μ‹œμŠ€ν…œ ---
    classDef edge fill:#E1F5FE,stroke:#01579B,stroke-width:2px
    classDef aws fill:#FFF3E0,stroke:#E65100,stroke-width:2px
    classDef logic fill:#F3E5F5,stroke:#7B1FA2,stroke-width:2px
    classDef data fill:#E8F5E9,stroke:#2E7D32,stroke-width:2px
    classDef ai fill:#E0F2F1,stroke:#00796B,stroke-width:2px,stroke-dasharray: 5 5

    subgraph Global_Edge ["🌍 Layer 7: Frontend & Masking"]
        User(("πŸ‘€ User\n(Browser)"))
        FB_H["πŸ”₯ Firebase Hosting\n(Static Assets)"]:::edge
        FB_R["πŸ›‘οΈ Cloud Rewrites\n(API Masking Proxy)"]:::edge
    end

    subgraph AWS_EC2 ["☁️ AWS Hardened Host (Docker Engine)"]
        direction TB
        
        subgraph Security_Gate ["πŸ”’ Security Layer"]
            Cert_Bot["πŸ”’ Certbot\n(SSL Auto-Renewal)"]:::aws
            DuckDNS["πŸ¦† DuckDNS\n(DDNS Endpoint)"]:::aws
        end

        subgraph Container_Mesh ["🐳 Isolated Docker Network"]
            direction TB
            subgraph App_Cluster ["🧠 Logic Tier"]
                Node_App["🧩 Node.js API\n(SSL Termination)"]:::logic
                AI_Logic["πŸ€– OpenAI Pipeline"]:::ai
            end
            
            subgraph Data_Tier ["πŸ’Ύ Persistence Tier"]
                direction LR
                MySQL[("🐬 MySQL 8.0")]:::data
                Redis[("πŸ”΄ Redis Cache")]:::data
                ES[("πŸ”Ž Elasticsearch")]:::data
            end
        end
    end

    Gemini_API[("🧠 OpenAI API")]:::ai

    %% --- 데이터 흐름 ---
    User -- "HTTPS / TLS 1.3" --> FB_H
    FB_H -- "Path Masking" --> FB_R
    FB_R == "Secure Tunnel" ==> DuckDNS
    
    DuckDNS --> Node_App
    Cert_Bot -. "SSL Certificate" .-> Node_App
    
    Node_App <--> AI_Logic
    AI_Logic -- "External Request" --> Gemini_API
    
    Node_App <--> MySQL
    Node_App <--> Redis
    Node_App <--> ES

    %% CI/CD
    GHA["βš™οΈ GH Actions"] -. "Deploy" .-> FB_H
    GHA -. "Docker Push/Up" .-> Node_App
Loading

About

πŸ•―οΈ μ—°λ“±: 각자의 λΆˆλΉ›μ„ λͺ¨μ•„ κ±°λŒ€ν•œ ν–‰λ™μ˜ 물결둜, μ—°λŒ€ν™œλ™μ„ μ—°κ²°ν•˜λŠ” ν”Œλž«νΌ (FE)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 79.9%
  • CSS 18.7%
  • HTML 1.2%
  • JavaScript 0.2%