# Project template for [gulp.js](http://gulpjs.com/) ### What it does * [Jade](http://jade-lang.com) files to HTML * [Stylus](http://learnboost.github.io/stylus) files to CSS * [JSX](http://facebook.github.io/react/docs/jsx-in-depth.html) files to Javascript through [browserify](http://browserify.org/) * You are able to use 'require' in your client-side code * Serves your static files to localhost:9001 * Reloads your browser with LiveReload when files change ## Getting things up and running - Install [Node.js](http://nodejs.org) ``` git clone git@github.com:leonidas/gulp-project-template.git cd npm install npm start open http://localhost:9001 in your browser ```` ### Enable LiveReload Install [LiveReload for Chrome](https://chrome.google.com/webstore/detail/livereload/jnihajbhpnppcggbcgedagnkighmdlei?hl=en) ## CLI Commands * npm install * Installs server-side dependencies from NPM and client-side dependencies from Bower * npm start * Compiles your files, starts watching files for changes, serves static files to port 9001 * npm run build * Builds everything Minification, uglification and other tasks you're expected to run before deploying your product can be made by running the build command with env variable NODE_ENV set to "production" NODE_ENV=production npm run build ## Development guidelines * **public** - directory should be dedicated only to compiled/copied files from **src** - directory. It should be possible to delete directory completely and after **npm start** or **npm run build** everything should be as they were before the deletion. * All backend dependencies should be installed with **npm**. Browser dependencies should be installed with **bower** or with **npm**. ### Using JavaScript instead of CoffeeScript Remove coffeeify transform from package.json file (browserify.transform field) ```diff "transform": [ - "coffeeify", "debowerify", "deamdify" ] ``` and change the ".coffee" extension to ".js" from gulpfile.coffee ```diff config = scripts: - source: './src/coffee/main.coffee' - extensions: ['.coffee'] + source: './src/js/main.js' + extensions: ['.js'] ``` You also can change the directory name to scripts or what ever.