feat: Add Interactive Pathfinding Visualizer to Utilities Lab - #1280
Conversation
- Created web-app/js/projects/pathfinding-visualizer.js with Dijkstra and A* logic - Created Python CLI equivalent Pathfinding-Visualizer.py - Generated and added custom banner graphic for Pathfinding Visualizer - Registered project in web-app/projects_registry.json and projects_registry.json - Updated web-app/js/projects.js and web-app/index.html - Resolved CSS table collapsing issues - Fixed JS duplicate initialization function bugs
|
Someone is attempting to deploy a commit to the Anuj's projects Team on Vercel. A member of the Team first needs to authorize it. |
|
Hi @steam-bell-92 , I've added the Pathfinding Algorithm Visualizer to the Utilities Lab with interactive visualization and node controls. The feature has been tested and is working as expected. Live Demo Video and Screenshots have been attached for your ease. Kindly review the PR. If everything looks good, please consider adding the GSSoC labels as well. Thank you! |
- Ensures accessibility and resolves Playwright E2E test failure. - Caches the activeElement when opening projectModal and returns focus upon closure via Escape key or click.
- Fixes issue where was null when the 50ms timeout fired, preventing focus restoration. - Removed invalid copy-pasted code from that could crash the handler before restoring focus.
…ocus restoration - Removed an inline MODAL FIX script in index.html that was prematurely clearing the modal body on Escape, destroying the focused element and breaking the focus restoration flow in js/main.js. - Removed a duplicate, broken openProject event listener from the bottom of js/main.js that was causing ReferenceErrors. - Updated Playwright test locator to specifically target a button inside #projectsSection so that it isn't confused by dynamically injected 'Recently Viewed' cards.
|
Hi @steam-bell-92 , All the issues have been resolved and all the checks are passing now. Thanks ! |
|
🎉 Thank you for your contribution! Your Pull Request has been merged successfully. We appreciate the time and effort you put into improving this project. Contributions like yours help the repository grow and stay useful for everyone. If you'd like to contribute again, please check the open issues and make sure you are assigned before opening another Pull Request. Thanks again for your support! 🙌 |
Description
This PR introduces the Pathfinding Algorithm Visualizer to the Utilities Lab. It allows users to visually understand how Dijkstra's Algorithm and A* Search find the shortest path between a start and target node on a 2D grid. The implementation includes interactive mechanics such as drawing walls and real-time visualization controls.
Key Features & Additions:
utilities/Pathfinding-Visualizer.py) that animates the grid and algorithms directly in the CLI, matching the repository's convention.generate_banners.pyusing Pillow.Fixes included
min-width,min-height,box-sizing: border-box, andflex-shrink: 0) and explicit<tbody>generation to ensure the HTML table properly fills out even when cells are empty.projects.jswhere theinitializeProjectfunction was accidentally defined twice, leading to the visualizer logic being silently overridden and the modal failing to initialize.Steps to Test
web-appdirectory (e.g.,python3 -m http.server 8080).python utilities/Pathfinding-Visualizer/Pathfinding-Visualizer.pyto confirm the terminal CLI version runs flawlessly.Live Demo Video and Screenshots
pathfinding.algorithm.visualizer.mov
Closes #1271