sashite-pmn 1.0.0
PMN (Portable Move Notation) provides a rule-agnostic, JSON-based format for describing the mechanical decomposition of moves in abstract strategy board games. This gem implements the PMN Specification v1.0.0 with a functional Ruby interface, breaking down complex movements into sequences of atomic actions while remaining completely independent of specific game rules. PMN reveals the underlying mechanics of any board game move through sequential action decomposition, supporting both explicit and inferred piece specifications. Built on CELL (coordinate encoding), HAND (reserve notation), and QPI (piece identification) specifications, it enables universal move representation across chess variants, shōgi, xiangqi, and any abstract strategy game. Perfect for game engines, move validators, and board game analysis tools.