Thanks for this. We have tried this, but as soon has you have add-on modules, things starts to get complicated. I have made some experiments with webpack and Rollup and while distributing pure JS projects is not a problem, AFAIK neither of them support the loading of add-ons, since how that procedure is carried out is up to each package maintainer to decide. Often the require statements contains logic that builds up the path to the *.node files programmatically and those are not easily parsed.
This is doable since other languages has succeeded with solving the same problem. For example does PyInstaller (http://www.pyinstaller.org/) contain logic to cope with quirks like these for most common Python packages. It is simplier on Python though, since you cannot load a module from a given path (without using tricks like changing the sys.path variable). Cheers //Jan fre 21 okt. 2016 kl 20:24 skrev Daniel Lo Nigro <gro...@dan.cx>: > I'd like to have something like this as well. > > In the meantime, the closest thing you can get is probably combining and > minifying all your JavaScript. If you combine your app into a single .js > file using a tool such as Webpack, it avoids the need to deploy the > node_modules directory (assuming there's no additional non-JS files in > there that are required). > > > On Thursday, October 13, 2016 at 7:45:22 AM UTC-7, Jan Flyborg wrote: > > Hi, > > I am wondering if there are any plans to change the module system of > nodejs to make it able to import modules from a single archive (much like > Java's jar which actually is a zip in disguise). > > We are planning on deploying code on a space constrained device and since > our node_module folder is very large, we are looking for ways to reduce its > size. We can of course address this with normal minification, but if a > jar-like archive format were available that would probably also help us a > lot. > > Any thoughts on this? > > Cheers > //Jan Flyborg > > > > > -- > > Sent from my mobile device. Please excuse my brevity. > > -- > Job board: http://jobs.nodejs.org/ > New group rules: > https://gist.github.com/othiym23/9886289#file-moderation-policy-md > Old group rules: > https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines > --- > You received this message because you are subscribed to the Google Groups > "nodejs" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to nodejs+unsubscr...@googlegroups.com. > To post to this group, send email to nodejs@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/nodejs/42ae3c4f-8b05-4ba7-945a-d88e7c8d0a3b%40googlegroups.com > <https://groups.google.com/d/msgid/nodejs/42ae3c4f-8b05-4ba7-945a-d88e7c8d0a3b%40googlegroups.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- Sent from my mobile device. Please excuse my brevity. -- Job board: http://jobs.nodejs.org/ New group rules: https://gist.github.com/othiym23/9886289#file-moderation-policy-md Old group rules: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscr...@googlegroups.com. To post to this group, send email to nodejs@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/nodejs/CACrfS1Aw6URuuaxrJhU%2Bj%3DR7neDmShvRPgGV2Dd8rL4QH2Fbag%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.