Skip to content

Ashok-Bhatt/Path-Finding-Visualizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🧭 Pathfinding Visualizer (Tkinter)

A Python-based visualizer for popular pathfinding algorithms, built with Tkinter. Allows interactive drawing of obstacles, start and end points, and visual demonstration of pathfinding logic.

demo gif


✨ Features

  • Drag to draw/remove walls
  • Click to place start/end points
  • Real-time visualization of various popular path finding algorithms like BFS, DFS, etc.
  • Reset Board options

πŸ›  Requirements

  • Python 3.x
  • No external libraries required (only Tkinter)

πŸš€ How to Run

  1. Clone the repository:

    git clone https://github.com/your-username/pathfinding-visualizer.git
    cd pathfinding-visualizer
  2. Run Program:

     python main.py

πŸ§‘β€πŸ’» How to use

  • Dropdowns : Select algorithm and block type (Source, Destination, Wall, Free Space)
  • Left Click + Drag: Place or remove blocks based on selected type
  • Start Button: Runs the selected pathfinding algorithm
  • Reset Button: Clears the entire grid and resets the board

🧠 Algorithms Implemented

  • ⚑ A-Star Search
    An informed search using heuristics to find the shortest path more efficiently.

  • πŸ” Best First Search
    Chooses the next node based solely on heuristic estimate to the goal (greedy approach).

  • πŸ“ˆ Breadth-First Search (BFS)
    Explores all neighbors level-by-level; finds the shortest path in unweighted graphs.

  • πŸ“‰ Depth-First Search (DFS)
    Explores as far as possible along each branch before backtracking; not guaranteed shortest.

🀝 Contributing

Feel free to fork and submit pull requests if you'd like to add new features, implement new searching algorithms or fix bugs.

About

A path finding visualization tool built using tkinter

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages