🧠 Note on Algorithms Used:
This project utilizes a variation of Dijkstra’s algorithm (inspired by greedy selection and minimum spanning tree techniques) to compute optimal file ordering for compression. Although the algorithm implementation resembles Dijkstra, it is functionally closer to Prim’s algorithm for MST generation — helping improve archive efficiency.
A macOS desktop application implementing Dijkstra's algorithm for efficient file path resolution when creating and extracting ZIP archives — built with C++ and wxWidgets.
-
🗜️ Create Archive
Select multiple files or folders and compress them into a single.zipfile at your desired location using optimized path resolution. -
📂 Extract Archive
Unzip files instantly with smart path determination — no nested folders, just direct access to the actual contents. -
💡 Batch Extraction
Extract multiple ZIP files at once with a single click using parallel processing.
Designed with algorithmic efficiency in mind, Archive Manager combines Dijkstra's pathfinding with compression for frustration-free archiving.
⚠️ This app requires local compilation and is only compatible with macOS due to licensing limitations. Therefore, Option 1 will only show the UI without operation
Download the prebuilt app to preview the user interface:
🔗 ArchiveManager.zip
- Download ArchiveManager.zip
- Unzip the file:
unzip ArchiveManager.zip -d ~/Applications/ - Lauch the application
open ~/Applications/ArchiveManager.app
- Clone the repository:
git clone https://github.com/Lumb3/ArchiveManager.git cd ArchiveManager - Build the project (requires wxWidgets):
make # or follow build instructions in the repository - Run the application:
./ArchiveManager