A chess game’s PGN can be very difficult for humans to read, parse, navigate, and edit. It can be a messy maze that is easy to get lost in, particularly when there are long and/or deeply nested variations, subvariations, sub-subvarations, etc. And common chess interfaces don’t help enough. pgn4people provides an alternative paradigm that embraces just-in-time complexity: show the user only as much of the mess as is relevant to her right that moment.
pgn4people is especially useful for opening repertoires. Currently, players break their repertoires into many (even hundreds) of separate PGN files simply because it’s not feasible to navigate the lines of an entire repertoire from within a single PGN. But that’s due to an interface failure, not the inherent complexity of chess. With pgn4people, displaying and navigating through the entire repertoire represented by the Encyclopædia of Chess Openings (ECO) or Nick De Firmian’s equally encyclopedic Modern Chess Openings (MCO) would appear no more complicated to the user than would displaying a single annotated game with variations only one level deep.
Currently, pgn4people is just a demo, just a proof of concept. And pgn4people is not intended to ever replace any current chess website or application software. Instead, the hope is that pgn4people will inspire the developers of current chess websites and applications to add—as an option— pgn4people’s approach to displaying PGN.
Check out the more-comprehensive discussion about the problems with traditional PGN interfaces and pgn4people’s approach in the README document at the GitHub repository for pgn4people-poc, the Python command-line interface app from which this web app sprung.
Now you can:
The code for this web app is available in the GitHub repository for pgn4people-poc-demo. The code is completely free and open source, made available under GNU General Public License, which was chosen due to this implementation’s reliance on Niklas Fiekas’s awesome python-chess library.