The presence of a source map doesn't automatically make this open source. It's copyrighted and proprietary unless there's a license that grants additional freedoms.
Open source is different from copyrighted. Or free (as in beer or speech), for that matter. It can be open source, free as in beer, as in speech, and copyrighted, at the same time.
Source available != Open source. The presence of source code doesn't automatically make this "free software" (as in speech, beer, or otherwise.) Copyright is conferred automatically, so a license needs to be granted to make the code Open Source.
This is an awesome tool and something I've been trying to do for too long. I've been trying to find ways of "quasi-replicating" SPA's like this and then doing analysis on them.
Can you talk a little bit about your approach? Any recommend readings or other tools for inspiration?
I got the idea to write this tool years ago when I noticed that even though many frontends use code splitting, chunks can be enumerated most of the time , because if the name includes the content hash, there must be a map from chunk id to chunk hash, so by finding that map I could enumerate and download all chunks.
In practice this might be more complicated, there are manifests and sometimes there's no map and the name only depends on the chunk id..
The second thing were source maps.. I saw tree-like structure in devtools so intuitively I wanted some way to "save" what I saw as files. Moreover, I figured out that there are many publicly reachable development/staging environments which save source maps on, plus the source map sometimes exists even if it's not specified in the minified file. This made me interested in the topic, but I couldn't find any tools that combine chunk detection and source map unpacking :)
Note that while source maps don't contain configuration data (like webpack config), some of this could possibly be inferred from the minified source, albeit I didn't explore this further.
I found this url in Google when I searched for appspot "gweb" - I used the gweb keyword because I noticed some google sites use that keyword. Generally I was searching for exposed source maps in Google owned websites.