feat: Add Interactive Pathfinding Visualizer to Utilities Lab#1280
Open
KunwarSidhu47 wants to merge 4 commits into
Open
feat: Add Interactive Pathfinding Visualizer to Utilities Lab#1280KunwarSidhu47 wants to merge 4 commits into
KunwarSidhu47 wants to merge 4 commits into
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. |
Author
|
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! |
added 3 commits
June 20, 2026 01:37
- 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.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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