Skip to content

youngeek-0410/gomoku-app-front

Repository files navigation

五目並べ フロントページ

Github issues Github stars Github top language Github license

https://gomoku.igsr5.com

webブラウザで五目並べが1人、もしくは2人でプレイできる。 1人モードの場合はCPUと戦うことができる。

また、サービスページでは常に過去の対戦履歴が見れるようになっている。

Screen Shot 2021-09-22 at 23 40 52

Screen Shot 2021-09-22 at 23 43 15

概要

このサービスは3つのサーバから構成される(学校のサーバ1台、ラズパイ2台)

メインAPI

リポジトリ

3つのリポジトリのうち、DBに関する責務をもつ。

言語はJavaで構成され、WebフレームワークとしてServletを利用して、 ユーザ、対戦履歴をDBから取得しフロントに返す。

また、APIのプロトタイプとしてRailsで実装したものもある。

フロントアプリ

本リポジトリにあたる。 本サービスのフロント部分の実装をしている。

やっていることとしては

  • ホーム画面、ユーザ登録画面、ゲーム画面、ゲーム終了画面の実装
  • 五目並べのロジックの実装(e.g. ユーザ判断、勝利判定)
  • ユーザ、対戦結果をメインAPIに投げて保存する
  • 対戦履歴を表示する

など

言語はTypeScriptでフロントフレームワークとしてReactを採用している。

CPU Bot

リポジトリ

1人モードでのCPU機能の実装をしている。 具体的には、Webサーバを立て、

現在の五目盤の状況を受け取り、それに合わせた次の一手を判断し、レスポンスとして返すような

GETのエンドポイントを実装している。

言語はPythonでWebフレームワークとしてFlaskを採用している。

Development

$ sudo apt-get install nodejs
$ npm i -g yarn
$ yarn install
# +@ .env.sampleをコピーして.envを作成し、依存リポジトリで`dockcer-compose up`すること
$ yarn start

Dependent repository