Coder Social home page Coder Social logo

murosan / shogi-board Goto Github PK

View Code? Open in Web Editor NEW
30.0 4.0 2.0 24.55 MB

ブラウザで動く将棋盤・棋譜並べ・検討用

Home Page: https://murosan.github.io/shogi-board/

License: MIT License

CSS 0.20% TypeScript 90.06% HTML 0.64% JavaScript 2.27% Shell 0.32% Dockerfile 0.03% SCSS 6.48%
board shogi shogi-board

shogi-board's Introduction

Shogi Board・ブラウザ将棋盤

build coverage tested with jest code style: prettier LICENSE tag node

まずは Playground(Web 将棋盤) でお試しください
https://murosan.github.io/shogi-board/playground/

ドキュメントはこちら
https://murosan.github.io/shogi-board/

shogi-board sample image

できること

  • ブラウザ上で駒を動かして将棋の検討や棋譜並べができる

使い方

ソースコードと、依存ライブラリのダウンロード

git clone [email protected]:murosan/shogi-board.git
cd shogi-board
yarn

開発サーバーを立ち上げる

yarn start
# chrome で
# http://localhost:3000/ にアクセス

ライセンス

ソースコード

MIT License

駒の画像

クリエイティブ・コモンズ・ライセンス
クリエイティブ・コモンズ 表示 - 非営利 - 継承 4.0 国際 ライセンス

利用する際は、このページShogi Boardのリンク(または両方)と
著作者(murosan)をクレジット表示してください。

その他の画像

shogi-board's People

Contributors

dependabot[bot] avatar lekhachuy08 avatar murosan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

shogi-board's Issues

接続に失敗しました と出る。

オフラインで将棋ソフトを走らせて使おうとしているのですが、接続に失敗しましたと出ます。

スクリーンショット 2020-03-21 21 35 06

サーバーのログは以下の通りです。

$ ./shogi-board-server -app_config ./app.config.yml                                                                                                                           (base)

   ____    __
  / __/___/ /  ___
 / _// __/ _ \/ _ \
/___/\__/_//_/\___/ v4.1.15
High performance, minimalist Go web framework
https://echo.labstack.com
____________________________________O/_______
                                    O\
⇨ http server started on [::]:8080
{"level":"info","time":"2020-03-21T21:33:49.331+0900","caller":"controllers/init.go:33","msg":"[Init]","names":["kristallweizen"]}
{"time":"2020-03-21T21:33:49.331899+09:00","id":"","remote_ip":"::1","host":"localhost:8080","method":"POST","uri":"/init","user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36","status":200,"error":"","latency":505993,"latency_human":"505.993µs","bytes_in":0,"bytes_out":19}
{"level":"info","time":"2020-03-21T21:33:51.309+0900","caller":"controllers/connect.go:28","msg":"[Connect] param check","name":"kristallweizen","path":"/Users/paalon/shogi/yaneuraou-kristallweizen/YaneuraOu-by-gcc"}
{"level":"info","time":"2020-03-21T21:33:51.314+0900","caller":"engine/engine.go:90","msg":"[engine.New]","exec":"usi"}
{"level":"info","time":"2020-03-21T21:33:51.314+0900","caller":"engine/engine.go:95","msg":"[engine.New]","wait":"usiok"}
{"level":"info","time":"2020-03-21T21:33:51.314+0900","caller":"engine/engine.go:163","msg":"[waitFor]","exitWord":"usiok"}
{"level":"info","time":"2020-03-21T21:33:51.314+0900","caller":"engine/engine.go:146","msg":"[catch]","start catching":""}
{"level":"error","time":"2020-03-21T21:34:01.318+0900","caller":"engine/engine.go:253","msg":"[waitFor] timed out","error":"Execution timed out","errorVerbose":"Execution timed out\ngithub.com/murosan/shogi-board-server/app/domain/model/exception.init\n\t/Users/paalon/go/src/github.com/murosan/shogi-board-server/app/domain/model/exception/errors.go:13\nruntime.doInit\n\t/usr/local/Cellar/go/1.14/libexec/src/runtime/proc.go:5414\nruntime.doInit\n\t/usr/local/Cellar/go/1.14/libexec/src/runtime/proc.go:5409\nruntime.doInit\n\t/usr/local/Cellar/go/1.14/libexec/src/runtime/proc.go:5409\nruntime.doInit\n\t/usr/local/Cellar/go/1.14/libexec/src/runtime/proc.go:5409\nruntime.main\n\t/usr/local/Cellar/go/1.14/libexec/src/runtime/proc.go:190\nruntime.goexit\n\t/usr/local/Cellar/go/1.14/libexec/src/runtime/asm_amd64.s:1373","stacktrace":"github.com/murosan/shogi-board-server/app/domain/entity/engine.(*Engine).waitFor\n\t/Users/paalon/go/src/github.com/murosan/shogi-board-server/app/domain/entity/engine/engine.go:253\ngithub.com/murosan/shogi-board-server/app/domain/entity/engine.New\n\t/Users/paalon/go/src/github.com/murosan/shogi-board-server/app/domain/entity/engine/engine.go:96\ngithub.com/murosan/shogi-board-server/app/server/controllers.Connect.func1\n\t/Users/paalon/go/src/github.com/murosan/shogi-board-server/app/server/controllers/connect.go:53\ngithub.com/labstack/echo.(*Echo).add.func1\n\t/Users/paalon/go/src/github.com/labstack/echo/echo.go:512\ngithub.com/labstack/echo/middleware.CORSWithConfig.func1.1\n\t/Users/paalon/go/src/github.com/labstack/echo/middleware/cors.go:121\ngithub.com/labstack/echo/middleware.RecoverWithConfig.func1.1\n\t/Users/paalon/go/src/github.com/labstack/echo/middleware/recover.go:78\ngithub.com/labstack/echo/middleware.LoggerWithConfig.func2.1\n\t/Users/paalon/go/src/github.com/labstack/echo/middleware/logger.go:117\ngithub.com/labstack/echo.(*Echo).ServeHTTP\n\t/Users/paalon/go/src/github.com/labstack/echo/echo.go:623\nnet/http.serverHandler.ServeHTTP\n\t/usr/local/Cellar/go/1.14/libexec/src/net/http/server.go:2807\nnet/http.(*conn).serve\n\t/usr/local/Cellar/go/1.14/libexec/src/net/http/server.go:1895"}
{"level":"error","time":"2020-03-21T21:34:01.319+0900","caller":"controllers/connect.go:56","msg":"[Connect] initialize Engine","error":"could not get 'usiok' from the engine: Execution timed out","errorVerbose":"Execution timed out\ngithub.com/murosan/shogi-board-server/app/domain/model/exception.init\n\t/Users/paalon/go/src/github.com/murosan/shogi-board-server/app/domain/model/exception/errors.go:13\nruntime.doInit\n\t/usr/local/Cellar/go/1.14/libexec/src/runtime/proc.go:5414\nruntime.doInit\n\t/usr/local/Cellar/go/1.14/libexec/src/runtime/proc.go:5409\nruntime.doInit\n\t/usr/local/Cellar/go/1.14/libexec/src/runtime/proc.go:5409\nruntime.doInit\n\t/usr/local/Cellar/go/1.14/libexec/src/runtime/proc.go:5409\nruntime.main\n\t/usr/local/Cellar/go/1.14/libexec/src/runtime/proc.go:190\nruntime.goexit\n\t/usr/local/Cellar/go/1.14/libexec/src/runtime/asm_amd64.s:1373\ncould not get 'usiok' from the engine\ngithub.com/murosan/shogi-board-server/app/domain/entity/engine.New\n\t/Users/paalon/go/src/github.com/murosan/shogi-board-server/app/domain/entity/engine/engine.go:97\ngithub.com/murosan/shogi-board-server/app/server/controllers.Connect.func1\n\t/Users/paalon/go/src/github.com/murosan/shogi-board-server/app/server/controllers/connect.go:53\ngithub.com/labstack/echo.(*Echo).add.func1\n\t/Users/paalon/go/src/github.com/labstack/echo/echo.go:512\ngithub.com/labstack/echo/middleware.CORSWithConfig.func1.1\n\t/Users/paalon/go/src/github.com/labstack/echo/middleware/cors.go:121\ngithub.com/labstack/echo/middleware.RecoverWithConfig.func1.1\n\t/Users/paalon/go/src/github.com/labstack/echo/middleware/recover.go:78\ngithub.com/labstack/echo/middleware.LoggerWithConfig.func2.1\n\t/Users/paalon/go/src/github.com/labstack/echo/middleware/logger.go:117\ngithub.com/labstack/echo.(*Echo).ServeHTTP\n\t/Users/paalon/go/src/github.com/labstack/echo/echo.go:623\nnet/http.serverHandler.ServeHTTP\n\t/usr/local/Cellar/go/1.14/libexec/src/net/http/server.go:2807\nnet/http.(*conn).serve\n\t/usr/local/Cellar/go/1.14/libexec/src/net/http/server.go:1895\nruntime.goexit\n\t/usr/local/Cellar/go/1.14/libexec/src/runtime/asm_amd64.s:1373","stacktrace":"github.com/murosan/shogi-board-server/app/server/controllers.Connect.func1\n\t/Users/paalon/go/src/github.com/murosan/shogi-board-server/app/server/controllers/connect.go:56\ngithub.com/labstack/echo.(*Echo).add.func1\n\t/Users/paalon/go/src/github.com/labstack/echo/echo.go:512\ngithub.com/labstack/echo/middleware.CORSWithConfig.func1.1\n\t/Users/paalon/go/src/github.com/labstack/echo/middleware/cors.go:121\ngithub.com/labstack/echo/middleware.RecoverWithConfig.func1.1\n\t/Users/paalon/go/src/github.com/labstack/echo/middleware/recover.go:78\ngithub.com/labstack/echo/middleware.LoggerWithConfig.func2.1\n\t/Users/paalon/go/src/github.com/labstack/echo/middleware/logger.go:117\ngithub.com/labstack/echo.(*Echo).ServeHTTP\n\t/Users/paalon/go/src/github.com/labstack/echo/echo.go:623\nnet/http.serverHandler.ServeHTTP\n\t/usr/local/Cellar/go/1.14/libexec/src/net/http/server.go:2807\nnet/http.(*conn).serve\n\t/usr/local/Cellar/go/1.14/libexec/src/net/http/server.go:1895"}
{"time":"2020-03-21T21:34:01.324128+09:00","id":"","remote_ip":"::1","host":"localhost:8080","method":"POST","uri":"/connect?key=kristallweizen","user_agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36","status":500,"error":"","latency":10014686750,"latency_human":"10.01468675s","bytes_in":0,"bytes_out":0}

Compile error

Depending on environment, there may be error when compiling with command tsc:

src/game.tsx:31:5 - error TS2554: Expected 1-2 arguments, but got 0.

31     super();
       ~~~~~~~

Use super(props) to fix:

export default class Game extends React.Component<
  { init: Positions },
  GameState
> {
  constructor(props: { init: Positions }) {
    super(props);

将棋エンジン同士を対決させることは可能でしょうか。

何度も質問申し訳ありません。

ドキュメントを読んでも記載が見当たらなかったのですが、現状二つの将棋エンジン同士を対決させることは可能でしょうか。
また、もし現状不対応でしたらソースコードのどのファイルを編集する必要がありそうか教えていただくことは可能でしょうか。

お手数をおかけしますが何卒よろしくお願いいたします。

Windows環境での動作

Windows環境での動作を確認しました。
多くのエンジンが自ファイルに対する相対パスで評価関数などを置いています。
遠いパスから絶対パスで起動されると認識できないようです。

絶対パスで規定した自作エンジンでは問題なく動作していますので
エンジン起動時にWindowsのカレントを実行ファイルがあるパスにすれば多くのエンジンで動作すると思います。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.