Shortest Path Finder

Dijkstra's Algorithm Visualizer — Python 3 · Tkinter desktop application

A Python 3 desktop application that visualizes Dijkstra's shortest-path algorithm on an interactive Tkinter canvas. It provides an animated splash screen, a file-backed credential login and registration system, an interactive graph editor for adding weighted nodes and edges, and a step-by-step animation loop driven by Tk after() callbacks that colours nodes and logs progress to a result panel.

Generated 4 Jun 2026 · 11 files · 10 components · 5 flows

File Architecture

The full source tree as a layered graph — every file with its role, imports, exports and reverse dependencies.

System Design

Runtime topology across the five zones — client, edge, application, data and external services.

Flow Graph

The five most significant application flows, step by step — startup, auth, write, read and error recovery.

Technology

ComponentTechnologyVersionSource of Detection
LanguagePython 33.10+ (tested 3.14)README.md · type hints (dict[int,…], int|None)
GUI toolkitTkinter (tkinter)stdlibimport tkinter as tk (script/splash/login/graph_interface/result_panel)
Themed widgetstkinter.ttkstdlibfrom tkinter import ttk (splash, result_panel, graph_interface)
Dialogstkinter.messageboxstdlibfrom tkinter import messagebox (login, graph_interface)
Priority queueheapq (binary heap)stdlibimport heapq (dijkstra.py)
Geometry / mathmathstdlibimport math (graph_interface.py)
Filesystem pathosstdlibimport os (login.py)
Credential storePlaintext filecredentials.txt · username:password lines
Theme paletteCatppuccin Mocha (hex constants)config.py · NODE_COLORS, CANVAS_BG…
Third-party depsNoneREADME.md · "No third-party dependencies"