Why did you build makestatic?
We wanted a tool that would generate a web site that is extremely optimized with little to no extra configuration that should be compatible with webpack but not dependent upon it and perform extremely well on pagespeed insights.
If you have configured your plugins correctly and your server is compressing files you should be able to achieve 100% on pagespeed insights very easily.
You can can see the results for this website are typically 100%, sometimes it drops to 99% when we invalidate the cloudfront cache ;)
Why should I care?
There are too many good reasons to list them all but if you have ever wanted to have a static website tool with a modular plugin architecture that knows about your website structure and resources then makestatic is for you.
Knowing this information enables writing plugins that can easily fingerprint resources or generate a complete sitemap.
Some other reasons are that it uses abstract syntax trees so it becomes trivial to do cool things like verify external links or if you want full markdown support with powerful HTML templating features combined look no further.
When should I use makestatic?
The makestatic tool is well suited for single page applications and small to medium sized websites.
If you are building a website with many thousands of pages you may prefer to use an alternative system.
Where is the SFTP deployment provider?
It is in the roadmap to create deployment providers for SFTP and other cloud services but for the moment the amazon s3 and github pages deployment providers should suffice.
Feel free to create a plugin and submit a PR if you need an alternative deployment provider urgently.
Why no windows support?
Primarily because we don’t have access to Windows machines. See the source code page for more information.
Why do I get a webpack deprecation warning?
babel-loader having not yet updated it’s usage of
loader-utils, see babel-loader#392 and babel-loader#391.
Why do I get an umet peer dependency warning?
peerDependencies when we resolve loaders relative to the current project, see babel-loader#408.
Running nsp check reports security advisories?
This is due to browsersync depending upon weinre for remote debugging which in turn uses dependencies that are locked to very old versions of express/connect. For the moment you should be fine if you ensure your browsersync port is not exposed to the outside world. If we cannot find a good solution soon we will fork browsersync/weinre to fix the issue.