Skip to content

Latest commit

ย 

History

History
68 lines (46 loc) ยท 2.63 KB

File metadata and controls

68 lines (46 loc) ยท 2.63 KB

๐Ÿ† Coin Prediction King - Backend

Coin Prediction King is a real-time cryptocurrency prediction game where players can select coins and compete based on market performance. This repository contains the backend infrastructure that powers the game.

๐Ÿ“Œ Project Overview

The backend architecture is designed for real-time data processing, user interactions, and deep learning analysis. The system integrates Kafka, AWS Lambda, DynamoDB, S3, and Spark for efficient data handling.

๐Ÿ› ๏ธ Tech Stack

  • Data Collection & Processing

    • Upbit WebSocket API
    • Apache Kafka (Producer & Consumer)
    • AWS DynamoDB
    • AWS S3 (Data Lake)
  • Backend Services

    • AWS Lambda (Serverless execution)
    • AWS API Gateway (API Management)
  • Deep Learning & Analytics

    • LSTM-based Prediction Model
    • Amazon Kinesis for User Data Stream
    • Spark DataFrame Analysis
  • Frontend & Deployment

    • React.js
    • Vercel (Frontend Hosting)

๐Ÿ“Š System Architecture

Architecture Diagram


๐Ÿ”ฅ API Endpoints

๐Ÿ“Œ Real-Time Crypto Data

Method URL Request Response
GET /upbit_data - [{"trade_price": 82635000.0, "code": "KRW-BTC", "change": "RISE", ...}]

๐Ÿ“Œ User Data Management

Method URL Request Response
POST /set_user_data { "student_id": "20201515", "name": "ํ™๊ธธ๋™", "department": "์ปดํ“จํ„ฐ๊ณตํ•™๊ณผ", "nickname": "์ฝ”์ธ๋งˆ์Šคํ„ฐ", ... } { "message": "Data saved successfully" }
GET /get_user_data - { "message": "์œ ์ € ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ด", "data": [...] }
GET /get_the_best_user_data - { "message": "1๋“ฑ ์œ ์ € ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ด", "data": { "nickname": "์ฐฌ์˜", "balance": 4771917000, ... } }
GET /get_department_list - { "message": "ํ•™๊ณผ ๋ฆฌ์ŠคํŠธ ๊ฐ€์ ธ์˜ด", "departments": ["์ปดํ“จํ„ฐ๊ณตํ•™๊ณผ", "์ •๋ณด๋ณดํ˜ธํ•™๊ณผ", ...] }

๐Ÿ“Œ Deep Learning & Analytics

Method URL Request Response
POST /set_deeplearning [ { "code": "KRW-BTC", "fastest_growth": true, ... }, ... ] { "message": "Deep learning results saved successfully" }
GET /get_deeplearning - [ { "code": "KRW-BTC", "fastest_growth": true, ... }, ... ]

๐Ÿ“Œ Clickstream Data

Method URL Request Response
POST /set_click_stream { "user_name": "CryptoWarrior", "selected_coins": ["BTC", "ETH", "SOL"], ... } { "message": "Clickstream data saved successfully" }