I have implemented a complete overhaul of the directory parsing algorithm in the extension to ensure it captures folders, subfolders, and files exactly as they are structured.
Here is what I’ve fixed:
- Robost Folder Depth Tracking: The script now checks for aria-level to exactly map the parent-child relationship of the IDE. If that isn’t available, it falls back to a highly stable visual-left offset system (with 8px tolerance) rather than just guessing.
- Proper Data Path Utilization: Modern IDEs like Lovable or Bolt inject paths inside data-path, data-id, or data-file-path. The scraper will prioritize these 1-to-1 mappings above everything else so long nested folders are never detached from their files.
- Container vs Row Deduplication: It filters out parent <div> wrappings properly so it no longer duplicates or muddles names. It also accounts for multiple formats of folder/file names provided by IDE inner spans (folder src, collapsed, etc).
- Resilient Clicking: Sometimes when you extract an entire project and the extension sequentially clicks a file down the list, virtualized file trees (such as those in Lovable/React) will detach the DOM. The extension now specifically checks if an element was detached due to React side-effects and re-verifies the DOM dynamically so the scrape continues flawlessly sequence by sequence.
The applet is re-compiled and running behind the scenes. You can download or re-load the extension in Chrome and try downloading a Lovable/Bolt project again!


