Skip to main content

A fully local Xiangqi desktop app

Project description

Xiangqi Lab

Python License

A fully local Xiangqi desktop app


Features

  • 100% Local & Private — No internet required, no accounts, no data collection. Everything (AI + saved games) runs and stays on your computer.
  • Fully Open Source — Licensed under AGPL-3.0 with an additional clause prohibiting use of the code for training AI models.
  • Extremely Lightweight — Built with Python and only the built-in Tkinter GUI library.
  • Cross-Platform — Works on Windows, macOS, and Linux.
  • Multiple Play Modes (requires external engine):
    • Player vs AI
    • AI vs AI
    • AI move suggestions
  • Easy Navigation — Easily switch between the main line and AI-generated variations.
  • Powerful Game Editor — Create and edit your own scenarios.
  • Compatible with strong engines — Supports Fairy-Stockfish and Pikafish (you must download the engine + neural network separately).

Xiangqi Lab is designed for study, practice, and experimentation. It is not intended for cheating in online games. Please respect fair play.


Screenshots

Xiangqi Lab is multilingual:

English • Simplified Chinese • Traditional Chinese • Vietnamese • Malay

Main Interface

English Simplified Chinese
Main Interface (EN) Main Interface (zh_CN)

Game Editor

English Simplified Chinese
Game Editor - Initial Position (EN) Game Editor - Initial Position (zh_CN)

AI Analysis (with external engine)

English Simplified Chinese
AI Analyzer (EN) AI Analyzer (zh_CN)

Install Xiangqi Lab

Prerequisites

  • Python 3.13 (or higher) with Tkinter

Windows

Recommended (easiest):

Alternative (advanced): Install from source.

  • Install Python with Tkinter
  • Install Git
  • Install Xiangqi Lab from source and Launch
    git clone https://gitlab.com/xiangqilab/xiangqilab.git
    cd xiangqilab
    ./install.bat
    ./run.bat
    

MacOS

  • Install Homebrew first
  • Install Python with Tkinter
    brew install python-tk
    
  • Install Xiangqi Lab from source and Launch
    git clone https://gitlab.com/xiangqilab/xiangqilab.git
    cd xiangqilab
    ./install.sh
    ./run.sh
    

Ubuntu

Xiangqi Lab is on Snap Store

Arch Linux

  • Install Xiangqi Lab from AUR and Launch
    paru -S xiangqilab  # or use "yay"
    xiangqilab
    

Other Linux Distributions

  • Install Xiangqi Lab from source and Launch
    git clone https://gitlab.com/xiangqilab/xiangqilab.git
    cd xiangqilab
    ./install.sh
    ./run.sh
    

Engine Setup (One-time only)

Xiangqi Lab requires a separate Xiangqi engine. We recommend Fairy-Stockfish or Pikafish.

  1. Download an Engine
  1. Launch Xiangqi Lab
  2. Open AI Settings
    • Click the "AI Settings" button in the main window.
  3. Configure Paths
    • AI Engine: Select the downloaded engine executable
    • Neural Network: Select the .nnue file
  4. Test the Engine
    • Click the "Test Engine" button
  5. Save the Settings
    • Press the "Save" button.

License

This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0-or-later).

Additional restriction: Use of this project's source code for training any AI or machine learning models is strictly prohibited.

See the LICENSE file for full details.


Contributing

Contributions are welcome! Feel free to:

  • Open issues for bugs or feature requests
  • Submit pull requests
  • Provide ideas

Enjoy playing Xiangqi!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xiangqilab-1.0.1.tar.gz (116.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

xiangqilab-1.0.1-py3-none-any.whl (133.4 kB view details)

Uploaded Python 3

File details

Details for the file xiangqilab-1.0.1.tar.gz.

File metadata

  • Download URL: xiangqilab-1.0.1.tar.gz
  • Upload date:
  • Size: 116.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for xiangqilab-1.0.1.tar.gz
Algorithm Hash digest
SHA256 809f223037bceeb5c9fffde7665ebbfa797b90e3be4d653580380ba53e5ab526
MD5 94e8b6aafbc8c2ea5d53c75abb682013
BLAKE2b-256 8894eba0bf2fed355ea707f889f8f05279ced4e3fea032d184fd1431a6e20dcb

See more details on using hashes here.

File details

Details for the file xiangqilab-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: xiangqilab-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 133.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for xiangqilab-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ea94e4ac83c0eeacdf34e14eea6d39822054d86a5b7a3c9296a338cc428141ad
MD5 f4e51e4be73933a86dfb5986b1d740d7
BLAKE2b-256 143eed94b5f2e7a50c59249bba0f0993423d5971b37e13d321111dbe41e44588

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page