Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


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 per face to 12 per face 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

  • Prerequisites: Visual Studio Code and npm
  • Clone the repository, e.g. git clone
  • Install dependencies, e.g. npm install
  • 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

For more information


interactive flexagon flexer




No releases published


No packages published