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.2.0.tar.gz (120.4 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.2.0-py3-none-any.whl (140.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for xiangqilab-1.2.0.tar.gz
Algorithm Hash digest
SHA256 8073c2cd199dfc31530fa9d3af3dea3560df34ae4afd2dac2a14ac8ee99866d9
MD5 faef0657fc205d36d1ae130d1279d64e
BLAKE2b-256 84a8bf6608cb64948a597c2e2c32695cc1d9081385915b57c50ec1fe204d8d3d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: xiangqilab-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 140.9 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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4326abcd3d2ce043411fb5090695bb3417c9fc3c523bafd7891dc3fcae907289
MD5 c8caf3ed1ba19f32fae32ae9445f4c19
BLAKE2b-256 af98ac21473bee778ad66971f8cd85d7eaa79fca6204a6b47d915ac68634088a

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