Get Set Deploy! Generate production-ready code for Static websites
This tool creates Production-ready code in just 1 command. It runs popular tools (gulp, etc.) underneath to compress JS, CSS, HTML and Images. Note: This is not a bundler. In a nutshell, files are individually processed and output to /public directory. goalup-minify is purposed for static websites if no bundler / build tool is integrated in your project.
You can also inline your compressed assets in html by passing inline attribute to the link, img and script tags.
Check Ongoing section for more details.
npm install -g goalup-minify
goalup-minify [options]
- Example:
- Copy
/examplesdirectory to some folder - Run
goalup-minifyinside/examples. /public(default name) folder is generated with your minified resources, in the working directory.- Note: You can run
goalup-minifyanywhere, however, rem. that paths are relative to directory where this command is run.
- Copy
goalup-minify --help to list all the options
Note: Paths in options are relative to working directory
- Compress only the listed files.
/publicis default output directory.
goalup-minify -o hello.js index.js world.css
- Creates
distas output folder if doesn't exist. Compress alljs_folder/**/**.jsfiles present in the listed path.
goalup-minify --js ./js_folder -d ./dist
- Compress
jsfiles in the path and all**/**.+(css|scss|stylus) files. It ignores all the files in excluded list if present in the aforementioned paths.
goalup-minify --js ./js_folder --style -x .js_folder/touch_me_not.js .js_folder/touch_me_not.css
--watch option is used in development environment where compressing assets is not required. Therefore, it's not part of plan as of now. However, it can be added on request, to achieve completeness and avoid setup of any additional toolchains. This might be required if someone is serving assets from /public directory using local server and not /src.
- To support
--excludeoption. - To support
--onlyoption. - Validate arguments. To not allowing multiple arguments for any option. Also,
--destcannot be same as the working directory. [[CUZ THAT'S UNSAFE]] Add font-icons support(Read this!)
- Parse .html files and add file name hashing for linked .js and .css files. (--hashing as option). This helps in browser caching
- Allow configurations for htmlmin, uglifyJS, etc. By default standard and lenient rules are added, however, custom support can be added on request.
- Can add lint rules for js and css on request.
- Create a boilerplate for static websites using CLI. (Internally would use
goalup-minifyas build tool).
- Support es6 for goalup lib for ease of development (Currently, not required as it's a V. simple tool) ;)