Skip to main content

Mahjong Learner / 麻将学习室

An offline Tkinter desktop application for learning four-player riichi mahjong. The interface is primarily Chinese, with Japanese mahjong terminology.

Install and run

python -m pip install mahjong-learner
mahjong-learner

Alternatively use python -m mahjong_learner. Run mahjong-learner --help for direct tool shortcuts, for example mahjong-learner --tool point-drill.

Python 3.10 or newer, Tcl/Tk, and a graphical desktop are required. On Windows, use a Python installation that includes Tcl/Tk. Linux users may need their distribution's python3-tk package. This is not a browser or headless application. The release was verified on Windows with Python 3.12. PyTorch is a runtime dependency for the existing four-player game engine; the download can be large even though no trained weights are distributed.

Nine tools

  • Four-player east-round game against rule-based AI.
  • AI spectator mode with pause and speed controls.
  • Tile-efficiency practice with discard and acceptance analysis.
  • Hand score calculator with waits, yaku, han, fu, and payments.
  • Fu calculation practice.
  • Yaku identification quiz.
  • Point calculation practice: han/fu, dealer/non-dealer, ron/tsumo, answer explanations, and session accuracy statistics.
  • Seventeen-step mahjong.
  • Two-player wait-guessing game inspired by Ten, using the rules shown in the application rather than claiming a complete manga reproduction.

Scoring does not use kiriage mangan: 3 han 60 fu and 4 han 30 fu remain below mangan. Point drills use four-player payments, zero honba, and no riichi sticks. The rules are project-specific and are not a certified tournament ruleset.

Data and model files

The package contains the local tile artwork and works offline after installation. No trained .pt checkpoints, local credentials, or user practice data are included. Missing neural checkpoints use the existing rule-based AI strategies. Tile artwork comes from FluffyStuff/riichi-mahjong-tiles and is dedicated to the public domain under CC0; see the bundled THIRD_PARTY_NOTICES.txt.

0.1.1

The hand calculator now supports separate dora and ura-dora indicator inputs, with tile previews, removal, clearing, and undo. Enter indicators, not the actual bonus tiles. Ura-dora scores only with closed-hand riichi or double riichi. Known indicators count toward the four-copy limit and reduce remaining waits and acceptance counts. Ordinary dora and ura-dora appear separately in the score.

0.1.0

First PyPI release: nine desktop tools, shared scoring and rule fixes, light UI theme, responsive layouts, and local point-calculation exercises.

Metadata

Release files for mahjong-learner 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mahjong-learner 0.1.1
File Size Uploaded Provenance Actions
mahjong_learner-0.1.1.tar.gz 1.8 MB Without provenance Details for mahjong_learner-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for mahjong-learner 0.1.1
File Interpreter ABI Platform Actions
mahjong_learner-0.1.1-py3-none-any.whl Python 3 none any Details for mahjong_learner-0.1.1-py3-none-any.whl

Total release size: 3.7 MB

Release files / mahjong_learner-0.1.1.tar.gz

Download URL mahjong_learner-0.1.1.tar.gz
Size 1.8 MB
Tags Source
SHA-256 checksum
How to use checksums
6f55d89e361534fd2a1dcba5cef3c0a5bf34c2e3a9eefe80a6d83bac54e883b8
BLAKE2b-256 checksum
How to use checksums
057abda3fa49044850de3f5a2876ade14898768a1e197f048427480014130b93
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.9

Release files / mahjong_learner-0.1.1-py3-none-any.whl

Download URL mahjong_learner-0.1.1-py3-none-any.whl
Size 1.9 MB
Tags Python 3
SHA-256 checksum
How to use checksums
43e8959454a63d29fe30513cae66f03afab3e8049fb745d8b6383f75c6840013
BLAKE2b-256 checksum
How to use checksums
aae5abe86bcbc27391cbde6825ccd20d587ac0c7a1ca3f3f48862177ba4f3618
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.9

Security for mahjong-learner 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page