Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alipc598/pathfindingvisualizer
Kivy-based application for pathfinding graph visualization.
https://github.com/alipc598/pathfindingvisualizer
kivy python
Last synced: 5 days ago
JSON representation
Kivy-based application for pathfinding graph visualization.
- Host: GitHub
- URL: https://github.com/alipc598/pathfindingvisualizer
- Owner: Alipc598
- License: mit
- Created: 2024-01-18T13:24:31.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-06-06T10:58:02.000Z (5 months ago)
- Last Synced: 2024-10-16T12:33:21.946Z (20 days ago)
- Topics: kivy, python
- Language: Python
- Homepage:
- Size: 64.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Pathfinding Visualizer
PathfindingVisualizer is an interactive tool built with the Kivy framework, designed to demonstrate the workings of number of algorithms. It provides a visually engaging and intuitive way to understand pathfinding algorithms based on scenarios from the Pathfinding project.
## Features
- **Interactive menu**: Click to create predefined obstacles, start points, and end points on a grid.
- **Algorithm Selection**: Various algorithms have been implemented.
- **Real-Time Visualization**: Watch the algorithms in action as they search for the shortest path.
- **Performance Metrics**: View the number of nodes explored and the time taken for each algorithm run.## Project Structure
The project is organized into two main directories for better organization and maintainability:
- `src`: Contains the source code files.
- `algorithms.py`: Implementation of various algorithms.
- `app.py`: Initializes and runs the Kivy application.
- `constants.py`: Defines various constants used throughout the project.
- `grid_components.py`: Manages the grid components, including obstacles, start points, and end points.
- `utilities.py`: Provides utility functions used across the project.
- Root Directory: Contains the main entry point of the application.
- `main.py`: Responsible for setting up and starting the app.## Downloading the Release
Download the latest version of PathfindingVisualizer from the Releases section of this repository. The release includes a standalone executable file that you can run on your system.
## Dependencies
Before running PathfindingVisualizer from the source, ensure you have the following dependencies installed:
- `Kivy`: For the graphical user interface.
- `numpy`: Used for mathematical operations and array manipulations.You can install these dependencies using pip:
```bash
pip install kivy numpy
```## Installation
To run PathfindingVisualizer from source:
1. Clone the repository.
2. Install the required dependencies.
3. Navigate to the root directory of the project.
4. Run `main.py` with Python.## Building Standalone Executable from Source
To create a standalone executable from the source code, you can use PyInstaller with the following command:
```shell
pyinstaller --onefile --windowed --paths=./src main.py
```
This will generate a single executable file in the dist directory.## Contributing
Contributions to the PathfindingVisualizer are welcome. Please read the contributing guidelines before making a pull request.
## License
PathfindingVisualizer is licensed under [MIT License](LICENSE).