Mini Run

https://github.com/tetsushi33/Mini-Run

Flask

AWS

Python

JavaScript

HTML

気軽にミニゲームを作って遊べるアプリです

Tetsushi Takanishi

saika764

堀 あかね

nozomi

推しアイデア

いろんな種類のミニゲームを気軽に作って気軽に遊べる!

作った背景

待ち時間などの不意にできた暇な時間に、超気軽にミニゲームを遊びたい!

推し技術

Javascript flask

プロジェクト詳細

気軽に作って気軽に遊ぶミニゲームアプリ!

内容

作るモード

  • クイズ
    • 問題文と選択肢、答えを入力 image
  • 仲間はずれ探し
    • 二つの画像データを入力 (未完成)

遊ぶモード

  • クイズ スタートしたら問題がランダムで選ばれた問題を次々に解いていく image image

技術構成

使用した技術スタック

言語

  • フロントエンド: HTML, CSS, JavaScript
  • バックエンド: Python

フレームワーク・ライブラリ

  • フロントエンド:
  • バックエンド:
    • Flask(Pythonの軽量なWebフレームワーク)
    • Boto3(AWS SDK for Python:DynamoDBやS3とのやり取りを実現)

AWS サービス

  • Amazon S3: 静的ファイルのホスティング
  • Amazon CloudFront: 静的ファイルの高速配信(CDN)
  • Amazon API Gateway: HTTPリクエストを管理
  • AWS Lambda: サーバーレス環境でバックエンドロジックを実行
  • Amazon DynamoDB: クイズデータやユーザー情報などを保存

その他

  • Git
  • Docker

流れ

  1. ユーザーがアクセス:
  • クライアント(ブラウザやアプリ)がCloudFront経由でS3から静的ファイル(HTML, CSS, JS)を取得。
  1. APIリクエストを送信:
  • フロントエンドのJavaScriptがAPI Gatewayにリクエストを送る(例: クイズのデータを取得したい)。
  1. Lambdaがリクエストを処理:
  • API GatewayがリクエストをLambda(Flaskアプリ)にルーティング。
  • Flaskアプリが必要な処理を行い、データベース(DynamoDB)やS3にアクセス。
  1. レスポンスを返す:
  • Lambdaが処理結果をAPI Gatewayに返し、クライアントにレスポンスを返す。

工夫した点・頑張った点

難しかった点

  • AWS初心者で、Boto3などのライブラリの使い方を理解するのに時間がかかった
  • 本当はゲームジャンルをもう少し用意したかったが、時間的に叶わなかった
    • 当初の予定:イントロドン、間違い探し、など

Tetsushi Takanishi

@fe926c7fef535f36