This project provides a starter-kit for every possible Front-End project using Gulp and Express.js.
- Express.js provide a strong structure for routing
- Gulp 4 (actually in alpha) is used as task manager
- Pug compilation to HTML
- PostCSS is used to compile the CSS (PreCSS, CSSNano and CSSNext are ready)
- Automatic Linter for PostCSS, JavaScript and Pug
- JavaScript Unit testing with Mocha with few examples
To get you started you can simply clone the angular-seed repository and install the dependencies:
- git clone --depth 1 http://git.proximity.fr/proximity-mauritius/sky-starter-kit (--depth 1 removes all but one .git commit history)
npm uninstall -g gulp
npm install -g gulp-cli
- Install Docker Toolbox (http://docker.com/toolbox)
- Start the Docker QuickStart Terminal
- Navigate to this application's root folder in the terminal window
- Run docker-compose build to build the images
- Run docker-compose up to run the containers
- Navigate to http://192.168.99.100:3000 in a browser
-
gulp help
Displays all of the available gulp tasks.
-
gulp vet
Performs static code analysis on all javascript files. Runs jshint and jscs.
-
gulp test
Runs all unit tests using karma runner, mocha, chai and sinon with phantomjs. Depends on vet task, for code analysis.
-
gulp clean
Remove all files from the build and temp folders
-
gulp clean-images
Remove all images from the build folder
-
gulp clean-code
Remove all javascript and html from the build folder
-
gulp clean-fonts
Remove all fonts from the build folder
-
gulp clean-styles
Remove all styles from the build folder
-
gulp fontsTask
Copy all fonts from source to the build folder
-
gulp imagesTask
Copy all images from source to the build folder
-
gulp stylesTask
Compile with PostCSS files to CSS, add vendor prefixes, and copy to the build folder
-
gulp serve-dev
Serves the development code and launches it in a browser. The goal of building for development is to do it as fast as possible, to keep development moving efficiently.
-
gulp build
Copies all fonts, copies images and runs
gulp optimize
to build the production code to the build folder.
-
gulp serve-build
Serve the optimized code from the build folder and launch it in a browser.
See the contribute file!
PRs accepted.
Small note: If editing the Readme, please conform to the standard-readme specification.
This repo branching model is inspired by Git Flow. Currently we have these types of branches:
- master - Latest release, stable
- develop - Main development, unstable
- release/ - Release archive
- feature/ - Specific features development
- example/ - Helpful examples
- hotfix/ - Emergency fixes for latest release
Read the Git Flow reference. This repo uses Semantic Versioning.