Skip to content

weevilgenius/puzzle-generator

Repository files navigation

Procedural Puzzle Generator

This is a procedural jigsaw puzzle generator that runs in the browser. It has several configurable strategies that control the generation process allowing for a variety of puzzle styles. It can produce an SVG file suitable for use with a laser cutter or CNC machine for making physical puzzles.

Use the tool here.

Project Goals

  • A tool to generate interesting and pleasing jigsaw puzzle designs without having to draw them by hand.
  • Clean, well-documented, and extensible codebase allowing others to add/modify/extend various algorithms for puzzle creation.
  • Output compatible with laser cutters or CNC machines (SVG)

Contributing

Contributions are welcome! The project is built with Typescript and Vite and uses Mithril and Web Awesome to create a responsive user interface. The puzzle generation process is broken into three stages (seed points, piece generation, tab generation), each of which can be extended with custom algorithms. To add a new point, piece or tab shape, see the generator documentation.

Building the project requires Node 20 or later and pnpm.

Getting Started

# clone the repository
git clone https://github.com/weevilgenius/puzzle-generator.git
cd puzzle-generator

# install dependencies
pnpm install

# run app in development mode
pnpm run dev

Acknowledgements

This project was inspired by discussions in various puzzle forums as well as online puzzle generators including those from proceduraljigsaw on GitHub.

About

Browser application for procedurally generating jigsaw puzzles

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Contributors 2

  •  
  •