{"id":27386826,"url":"https://github.com/raphaelsenn/python-pathfinder-with-dijkstras-algorithm","last_synced_at":"2025-08-27T22:09:56.592Z","repository":{"id":193707887,"uuid":"689351972","full_name":"raphaelsenn/python-pathfinder-with-dijkstras-algorithm","owner":"raphaelsenn","description":"Python project applies Dijkstra's algorithm for shortest maze pathfinding with visualization capabilities","archived":false,"fork":false,"pushed_at":"2023-09-10T09:42:27.000Z","size":7413,"stargazers_count":7,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-13T17:57:49.882Z","etag":null,"topics":["algorithms-and-data-structures","dijkstra-algorithm","dijkstra-shortest-path","dijkstrasalgorithm","priority-queue","pygame","python3","shortest-path-algorithm","visualization"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/raphaelsenn.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-09-09T14:35:13.000Z","updated_at":"2025-02-21T11:18:25.000Z","dependencies_parsed_at":"2023-09-09T15:34:08.655Z","dependency_job_id":"4cd08ec6-d7dd-44c2-bfa9-32bcfa93e0a0","html_url":"https://github.com/raphaelsenn/python-pathfinder-with-dijkstras-algorithm","commit_stats":null,"previous_names":["raphsenn/python-pathfinder-with-dijkstras-algorithm","raphaelsenn/python-pathfinder-with-dijkstras-algorithm"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/raphaelsenn/python-pathfinder-with-dijkstras-algorithm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raphaelsenn%2Fpython-pathfinder-with-dijkstras-algorithm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raphaelsenn%2Fpython-pathfinder-with-dijkstras-algorithm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raphaelsenn%2Fpython-pathfinder-with-dijkstras-algorithm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raphaelsenn%2Fpython-pathfinder-with-dijkstras-algorithm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/raphaelsenn","download_url":"https://codeload.github.com/raphaelsenn/python-pathfinder-with-dijkstras-algorithm/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raphaelsenn%2Fpython-pathfinder-with-dijkstras-algorithm/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272387532,"owners_count":24925913,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-27T02:00:09.397Z","response_time":76,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["algorithms-and-data-structures","dijkstra-algorithm","dijkstra-shortest-path","dijkstrasalgorithm","priority-queue","pygame","python3","shortest-path-algorithm","visualization"],"created_at":"2025-04-13T17:51:22.851Z","updated_at":"2025-08-27T22:09:56.519Z","avatar_url":"https://github.com/raphaelsenn.png","language":"Python","readme":"# Python Pathfinder with Dijkstra's Algorithm\n\nThis Python project implements a pathfinding algorithm using Dijkstra's algorithm to find the shortest path between two points in a maze-like environment. The maze is represented as a matrix, and the code comments within the repository provide detailed explanations of the implementation.\n\n\u003cp float=\"left\"\u003e\n   \u003cimg src=\"./images/have.png\" width=400 height=400\u003e\n   \u003cimg src=\"./images/fun.png\" width=400 height=400\u003e\n\u003c/p\u003e\n\n## Features\n\n- **Maze as a Matrix**: The maze is represented as a matrix, where 1s denote open paths, and 0s denote walls.\n\n- **Dijkstra's Algorithm**: Utilizes Dijkstra's algorithm to find the shortest path in the maze.\n\n- **Real-time Visualization**: Visualize the maze, and final path in real-time using the Pygame library.\n\n- **Interactive Maze Creation**: Create custom mazes by setting walls, start points, and destination points using a graphical interface.\n\n- **Configurable Block Size**: Adjust the size of each grid block in the maze to create larger or smaller environments.\n\n## Usage\n\nTo use this Python Pathfinder with Dijkstra's Algorithm, follow these steps:\n\n1. **Set Start and End Positions**:\n   - **Right-click** the mouse to set the **start position** (denoted in green) within the maze matrix.\n   - **Right-click** the mouse again to set the **end position** (denoted in blue) within the maze matrix.\n\n2. **Create Walls**:\n   - **Right-click** the mouse for the third time to create walls (denoted in black) in the maze. You can continue creating walls by right-clicking as needed.\n\n3. **Calculate Shortest Path**:\n   - After setting the start and end positions and creating walls as desired, press the **Enter key** to calculate the shortest path using Dijkstra's algorithm.\n\n4. **Restart the Maze (Optional)**:\n   - To clear the maze and start over, press the **Delete key**.\n\nExplore the matrix-based maze representation and observe the pathfinding process to find the shortest path between the start and end positions within the maze. Customize the maze by creating walls to define the path and challenge the algorithm.\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"./images/pathfinder.gif\" alt=\"Alternativer Text\"\u003e\n\u003c/div\u003e\n\n## Getting Started\n\nTo run this Python Pathfinder with Dijkstra's Algorithm, follow these steps:\n\n1. Clone the repository to your local machine\n2. Navigate to the project directory\n3. Install the required dependencies, including Pygame\n5. To run just type: python3 main.py\n\n## Example Blocksize\n- **Blocksize 25 and Blocksize 100**\n\u003cp float=\"left\"\u003e\n   \u003cimg src=\"./images/25.png\" width=400 height=400\u003e\n   \u003cimg src=\"./images/100.png\" width=400 height=400\u003e\n\u003c/p\u003e\n\n# License\nThis program is licensed under the MIT License. See the LICENSE file for more information.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraphaelsenn%2Fpython-pathfinder-with-dijkstras-algorithm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fraphaelsenn%2Fpython-pathfinder-with-dijkstras-algorithm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraphaelsenn%2Fpython-pathfinder-with-dijkstras-algorithm/lists"}