The initial version of this tiling app covers the 15 cases of pentagons that tile the plane monohedrally (i.e. with one type of tile). This Wikipedia article describes the tilings. Where the shapes have degrees of freedom these are parameterized (and parameters can be adjusted with sliders in left side panel).
The app is intended to support exploration of different coloring of the tilings and the use of different wood veneers for the tiles. The default color palette matches the illustrations used in the Wikipedia article. These colors can be changed as desired. They can also be defined based on a number of standard color schemes using a seed color. Images for tiles can be loaded in any standard graphics format and are stored using local browser storage.
Colors (or images) can be applied based in the isometry class of the tiles with an option to distinguish chiral pairs. This gives the coloring schemes demonstrated in Wikipedia. Alternatively the coloring can be based on the orientation of the tile, or simply with each tile colored independently.
The development was inspired by the Tiling Viewer Applet built in Java by Jaap Scherphuis. Initially the possibility to extend that implementation to support more flexible coloring was considered, but it was decided to implement using more recent Web technologies. The basic geometry of each tile type is taken directly from Tiling Viewer Java code, converted to JavaScript. The tile layouts however are defined declaratively and actual positions are calculated from the adjacency descriptions and associated offset information. Currently nearly all the patterns (primitive units) demonstrated in Wikipedia are included.
The definition of new layouts is supported with a test mode which displays the primitive unit (either with colors or annotated with labels for the sides). The offset information that defines how primitive units are arranged to form the tiling is also available for inspection.
Currently works on PC / Mac but not touch-based devices. For technical details and code see github.com/sahayw/Tilings