ShogiHome

English
将棋の GUI アプリです。
コンピューターとの対局や棋譜の編集・検討ができます。
将棋所と同様に USI プロトコル 対応の思考エンジンを利用できます。
コンセプト
私達は既に将棋所やShogiGUIなどの洗練されたソフトウェアで将棋の対局や研究が可能です。
しかし、その多くは個人がクローズドに開発しているものです。
コンピューター将棋界の権威ある開発者もソースコード公開の必要性に言及しています。
ShogiHomeはソースコードを公開しており、そして低い制限のもとで自由に利用・改変が可能です。
ShogiHome は Web ベースの GUI フレームワークである Electron を使っています。
Web の技術を使うことで将来の幅広い活用を目指しており、機能は限られますが通常のブラウザでも動作します。
Electron は Chromium をバンドルするため、どの OS でも同じ操作性と品質が担保しやすいのも特徴です。
昨今では 2in1 タブレットやコンバーチブル型 PC の普及により、PC 向けの OS でもタッチパネルを使って将棋の対局ができるようになりました。
しかし、 PC 向けの伝統的なアプリケーションは UI コンポーネントが細かく、タッチ操作との相性がよくありません。
ShogiHome ではタッチ操作のしやすさも重視して UI を設計しています。
Website
https://sunfish-shogi.github.io/shogihome/
ウェブサイトではブラウザ版アプリを試すことができます。
Wiki
https://github.com/sunfish-shogi/shogihome/wiki
使い方や設計に関する情報はこちらを参照してください。
スクリーンショット



ダウンロード
Releases からダウンロードできます。
エンジン開発者の方へ
USI や CSA プロトコルの通信ログの出力はデフォルトで無効です。
こちら を参考に設定してください。
スクリプトファイルをエンジンとして登録できないという問い合わせが複数来ています。 シェルスクリプトやインタプリタ型言語でエンジンを実行したい方へ を参考にしてください。
不具合報告及びその他の開発協力
CONTRIBUTING.md を必ずお読みください。
GitHub のアカウントをお持ちの方は Issue/PullRequest を活用してください。
大きな変更はいきなり着手せず Issue を作成してください。
Issue や PullRequest を作成する際は、必ず Template を使用してください。
AI に Issue や PullRequest を作成させたり、やり取りを自動化することは固くお断りします。
部分的に AI を利用したり、翻訳に利用することは問題ありませんが、必ず人間がやり取りをしてください。
GitHub アカウントをお持ちでない場合は 送信フォーム でご連絡ください。
開発の進捗状況は プロジェクトボード を参照してください。
セキュリティ
ShogiHome を自分でビルドする場合は ShogiHome の開発をするときのセキュリティ をお読みください。
開発
必要なもの
Setup
git clone https://github.com/sunfish-shogi/shogihome.git
cd shogihome
npm ci
Launch
# Electron App
npm run electron:serve
# Web App
npm run serve
# Standard: http://localhost:5173
# Mobile : http://localhost:5173/?mobile
Release Build
# Electron App (Installer)
npm run electron:build
# Electron App (Windows Portable App)
npm run electron:portable
# Web App
npm run build
Unit Tests
# test only
npm test
# coverage report
npm run coverage
# launch Vitest UI
npm run test:ui
Lint
npm run lint
Licences
ShogiHome
MIT License
Icon Images
/public/icon 配下のアイコン画像は Material Icons を使用しています。
これには Apache License 2.0 が適用されます。
Dependencies
レンダラープロセスで使用しているライブラリは THIRD PARTY LICENSES を参照してください。
Electron と Chromium については electron-builder によって成果物にバンドルされます。
评论