Gulppage serve static files (html, css, js) based on compiled sources. It is built over gulp and provides a quick and easy environment for building static pages from scratch.
It provides a large features and options to make page dev quick: less compilation, javascript browerification, vendor management, fontello integration and much more. An effort has been done on log too, in order to provide quick debug if needed.
It also comes with an export command. So once your dev is ok, you can export the result easily in a tarball and put it on a server.
For any bug or feature query, please report to the github project
- html:
- linter: htmlhint, with your own custom options (see options for more details).
- compilation:
- usemin allow you concat and easily embed vendor javascript, css or external html;
- minification with htmlmin, with your own cutom options (see options for more details);
- file include to get basic html includes or templating.
- js:
- linter: jsHint based on the .jshintrc project file and/or custom options.
- compilation:
- browserify, the magic javascript include way;
- uglify to make it lighter;
- less:
- linter: recess
- compilation:
- assets:
- icons
- command line to open and select your fontello icon set, and once done, to import and save it locally.
- livereload: All the task for Javascript, Css, Html or assets comes with livereload option, so you can dev fast
- project reseting:
- a gulp task allow you to clean up all the generated files fast;
- gulpfile:
- autorestart server when changed
To install in a "mylanding" folder, use shell command and run:
git clone https://github.com/tilap/gulppage.git mylanding
cd mylanding
make install
All the common run task comes with make
and package the gulp task in order.
note: Take care to avoid folder with the same name as main args, ie "install", "update", "reset", "watch", "export", "fontgettoken", "fontopenmac", "fontopenlinux", "fontsave"
Update the packages dependancies, both bower and npm. Clean the old ones and install the new ones (prune).
Delete the compiled files and the installed bower/npm packages. You can then rerun make install
to restart a new
project.
Build the initial sources and start watching all the source for livereloading.
Rebuild clean output and make a tarball.
make fonopenmac
and make fonopenlinux
open the fonticon set in your browser. You can thus edit all you need
and save the session directly on your browser. THen run make fontsave
in your term, and the new font package will
be importer. If you host your own fontelle server, edit the makefile option.
If you wanna see a basic usage sample, run the project by with src-sample (remove src folder and rename src-sample to src, or edit the config.js file). You'll have a really basic example with less working (bootstrap integration), browserify, a stupid image asset and an icon. You can sse the result on this page.
- By using usemin plugin over your css/js compiled files, you automatically have file revision, so no fucking browser cache problem;
- With fontello, you can use your own fonticon / svg by importing them and keep track easily;
- take care of keeping fonticon css file (or any file using css import) out of usemin to avoid import breakings;
- If you work on email templating, modify the gulpfile to use gulp inline css plugin. I'll maybe do a branch or another repo for that kind of work.
Project released under MIT licence.