Skip to content

Generate and visualise different maze generation and path finding algorithms. Built using TypeScript and React.

Notifications You must be signed in to change notification settings

Delvoid/vision-maze

Repository files navigation

Vison Maze

Demo · Report Bug · Request Feature

Banner

Generate and visualize different maze generation and path finding algorithms. Built using TypeScript and React.

Example Maze

Features

  • Generate mazes using various algorithms:
    • Prim's algorithm
    • Recursive backtracking
    • Kruskal's algorithm
    • Recursive division
  • Solve mazes using different path finding algorithms:
    • Breadth-first search (BFS)
    • Depth-first search (DFS)
    • A* search
    • Dijkstra's algorithm
  • Visualize the maze generation and path finding process
  • Create your own maze by left clicking and dragging on the grid
  • Move the start and end points by dragging them

Maze Generation Algorithms

Prim's Algorithm

Prim's is a greedy algorithm that efficiently creates mazes by considering the local optimum at each step. The resulting mazes often have numerous dead-ends.

Recursive Backtracking

A randomized depth-first search approach, this method creates mazes with long, winding passages.

Kruskal's Algorithm

An algorithm that produces mazes with a balanced texture, combining both randomness and structure in its approach.

Recursive Division

A recursive algorithm that works by splitting the maze into smaller sub-mazes. This method creates mazes with long, straight passages.

Path Finding Algorithms

Breadth-first Search (BFS)

Breadth-first search is a graph traversal algorithm that explores nodes in the order of their distance from the root node. It finds the shortest path between the start and end points.

Depth-first Search (DFS)

Depth-first search is a graph traversal algorithm that explores nodes in the order of their depth from the root node. It does not guarantee the shortest path.

A* Search

A* search is a graph traversal algorithm that finds the shortest path between the start and end points. It uses a heuristic function to estimate the distance between the current node and the end node.

Dijkstra's Algorithm

Dijkstra's algorithm is a graph traversal algorithm that finds the shortest path between the start and end points. It does not use a heuristic function.

Run Locally

  1. Clone the project
  git clone
  1. Go to the project directory
  cd vision-maze
  1. Install dependencies
  npm install
  1. Start the server
  npm run dev

or try the demo

(back to top)

Contributions

Contributions are welcome! Feel free to open an issue or submit a pull request.

Contact

Delvoid - @delvoid

(back to top)

About

Generate and visualise different maze generation and path finding algorithms. Built using TypeScript and React.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published