Zepto Builder is the web based equivalent of the regular Zepto build process and will let you generate a custom version that just includes the modules you need.
The service itself is located @ http://github.e-sites.nl/zeptobuilder/
##Why this tool? By default, Zepto provides a build tool, based on Node.js and Coffeescript. So, why this tool? Well, mainly because a web interface is far more accessible and easier to use than a CLI.
##Getting started
After cloning (or downloading) the repo you must run npm install
to fetch all dependencies, when this is done all Bower packages will automatically be downloaded and a browser build of Uglify will be created. Needless to say, for this to work you will need to have Node.js and Bower installed on your machine.
##Gulp task
Gulp is used to create a distribution build. By running the default Gulp task it will optimize all resources and store them in the dist
folder. The files located in this folder are prepared to be uploaded / deployed as is.
##Under the hood So, how does this tool actually work? Well, altough Zepto offers a CLI-based build tool I have decided to make it client-side only, based on DownloadBuilder. The process from selecting the modules to actually generating the build (and minify it) is:
- all available Zepto module metadata (i.e. name, size and URL) is dynamically fetched from GitHub and cached (for now this is session based);
- the module descriptions are mapped via a static JSON file (assets/json/modules.json) and are shown when hovering the table rows;
- based on ones selection the modules will be fetched from GitHub and concatenated by DownloadBuilder
- the minification process is handled by a browser build of Uglify
##Credits First and foremost, of course, Thomas Fuchs of Zepto fame (and all it's contributors). Also, Mihai Bazon, the creator of Uglify, and Greg Franko the author of DownloadBuilder.
##Browser support Tested in the latest (stable) versions of Google Chrome, Mozilla Firefox, Opera and Safari. As for Internet Explorer; I have tested it in IE9 and up (since 0.4.0).
##Road map
Improve browser supportAs from 0.4.0, IE9 is supported as wellOffer 'save to disk' option for minified builds as wellThis feature landed in 0.4.0File size totals when selecting modulesLanded in 0.6.0- Complement docs and inline comments
- Unit testing
- ...any other suggestions are welcome!
##License Copyright (C) 2015 e-sites, http://e-sites.nl/ Licensed under the MIT license.