Skip to content

Latest commit

 

History

History
135 lines (84 loc) · 3.88 KB

README.en.md

File metadata and controls

135 lines (84 loc) · 3.88 KB

ShogiHome

Test codecov

日本語

This is a Shogi GUI app. You can play Shogi with AI and manage records.

You can use this app with any Shogi engine (AI) based on the USI Protocol, just like 将棋所.

Concept

Excellent shogi software such as 将棋所 and ShogiGUI already exist. However, the source code of most of these programs are not public. Authoritative Shogi AI developers have advocated the importance of source code sharing. ShogiHome publishes its source code fully. You can use or modify it under only a few restrictions.

ShogiHome is developed using Electron which is a web-based GUI framework. We make use of modern web technologies since we want this project to see widespread usage in the future. You can even run this on your web browser although only a portion of features are supported. As an Electron-based app, this is bundled with Chromium, so it is easy to guarantee the same operability and quality across different OSs.

These days, 2-in-1 laptops are becoming popular. It is now possible to play shogi on PCs with a touch screen. However, legacy desktop Shogi apps have very small UI components. These are not good for compatibility with a touch display. We designed this app to have operability for touch devices.

Website

https://sunfish-shogi.github.io/shogihome/

You can try the web version from the website.

Wiki

https://github.com/sunfish-shogi/shogihome/wiki

Screenshots

Screenshot1

Screenshot2

Screenshot3

Downloads

You can download any version from Releases.

Bug Reports / Suggestions

If you have a GitHub account, please create an Issue or a Pull Request. If you want to make large changes, please create an Issue before development.

If not, please send messages through the Web Form.

You can see the development progress at Project Board.

Development

Requirements

  • Node.js

Setup

git clone https://github.com/sunfish-shogi/shogihome.git
cd shogihome
npm install

Launch

# Electron App
npm run electron:serve

# Web App
npm run serve

Release Build

# Electron App (Installer)
npm run electron:build

# Electron App (Portable)
npm run electron:portable

# Web App
npm run build

Unit Tests

# test only
npm test

# coverage report
npm run coverage

Lint

npm run lint

CLI Tools

Licences

ShogiHome

MIT License

Icon Images

This app uses Material Icons saved in /public/icon. These assets are provided under Apache License 2.0.

Dependencies

See THIRD PARTY LICENSES for libraries used from renderer process.

electron-builder bundles license files of Electron and Chromium into artifacts.