Flexagonator is a flexagon simulator. Flexagons are origami-like puzzles folded from strips of paper, which can then be "flexed" into a variety of kaleidoscopic arrangements. At their simplest, you can easily cycle through various states. At their most complex, it can be more challenging than a Rubik's Cube(tm) to get them back to their original state.
Some of its features:
- Supports a wide variety of triangle flexagons, from 4 triangles a side to 12 a side or more, made up of any shape of traingle
- Displays the flexagon, the visible leaves, and information about the internal structure
- Figures out which flexes are possible and allows you to interactively pick flexes to perform
- Creates new flexagons using "flex generating sequences" for generating the structure necessary to perform the given flexes
- Displays the unfolded strip of paper corresponding to the current flexagon
- Searches for all the states accessible given a specified set of flexes
- Can figure out the series of flexes needed to get from one state to another
Building and running
- Clone the repository, e.g.
git clone https://github.com/loki3/flexagonator.git
- Install dependencies, e.g.
- Build the Typescript project, e.g. use Visual Studio Code and choose Terminal > Run Build Task
- Load one of the sample HTML files, e.g. index.html
- .vscode: files that support working on Flexagonator using Visual Studio Code
- custom: sample HTML files that use the Flexagonator API to create interactive flexagon tools
- docs: documentation for the Flexagonator API and the notation used to describe flexagons and flexes
- idyll: the source for Explorable Flexagons, an interactive book built using Idyll and Flexagonator
- src: the source for Flexagonator
- test: tests for validating Flexagonator