Sunt de asamblat trei-patru componente (principial independente):
    1 — un parser de PGN; separă tagurile, comentariile, variantele şi mutările (în format SAN)
    2 — un model minimal al desfăşurării jocului (reprezentarea în memorie a poziţiei şi a mutărilor; validarea legalităţii unei mutări; funcţii de trecere dintr-o poziţie în alta)
    3 — o funcţie care primind o mutare în format SAN (din lista de mutări furnizată de 1), stabileşte (folosind 2)) mutarea corectă în poziţia respectivă ("from-to"; SAN cuprinde de obicei numai câmpul "to") şi o transmite interfeţei grafice; aceasta (Chess User Interface, conţinând un model CSS pentru şah şi funcţii javascript de legătură cu 2)) este produs © Dynarch.com.

Eventual, ar mai fi de completat cu nişte programe (în perl şi mySQL) pentru a constitui o bază de date din diverse fişiere PGN şi pentru a servi una dintre partidele înregistrate astfel (desigur, asemenea "completări" sunt doar exerciţii de folosire a aplicaţiei constituite din cele trei componente menţionate mai sus).

(v. doPGN)