Maintainer: Mathieu Desvé
Based on generator-generator
First make a new directory, and cd into it:
mkdir my-new-project && cd $_
Then install generator-footguard:
npm install -g generator-footguard
Run yo footguard, optionally passing an app name:
yo footguard
Available generators:
Available commands:
The CSS Styleguide of your project is automatically generated by KSS and inspired by GitHub CSS Styleguide.
For use it, run grunt server and in an other terminal run grunt open:styleguide or go in your brower to http://localhost:9000/styleguide/index.html.
Live compiling and LiveReload is enable when change some Sass file.
Footguard application work with Code coverage. When you run your test with grunt test, all CoffeeScript file are builded for coverage with JSCoverage pattern. You can see grunt-coffeecov (Thanks to Benbria for Coffee-coverage). The tests are reported by mocha-phantom-coverage-reporter. This reporter create a coverage folder with coverage.html for local coverage and coverage.lcov.
You can plug this to Coveralls it's very simple. Create an account and a project in Coveralls interface, add your project token in .coveralls.yml
repo_token: "TQm8NvgkKF...tmDMfxr8O"And add these lines to .travis.yml
after_success:
- cat ./coverage/coverage.lcov | ./node_modules/coveralls/bin/coveralls.js src/coffee/appYou can deploy your footguard application to Github Pages. For that you have some helper scripts in scripts folder.
grunt build
./scripts/gh-pages.shThis script initialize a new git repository in build folder and commit in gh-pages branch.
If you want to deploy automaticly with Travis CI. Add this to your .travis.yml in after_success section
REPO="https://$GH_USER:$GH_PASSWORD@github.com/user/repository" ./scripts/gh-pages.shReplace user and repository by your username and your deploy repository. gh-pages.sh use HTTPS authentification, for create secure GH_USER and GH_PASSWORD use Travis encrypt gem
gem install travis
travis encrypt GH_USER=username GH_PASSWORD=mypassAdd the output in your .travis.yml
env:
global:
- secure: "hc0s49uOKKAlM/np6jCd4il3K0f....PtPSGS7DZA="
You can deploy your footguard application to Heroku. For that you have some helper scripts in scripts folder.
grunt build
APP=my-heroku-app ./scripts/heroku.shThis script initialize a new git repository in build folder, commit and push to Heroku repository.
If you want to deploy automaticly with Travis CI. Add this to your .travis.yml in after_success section
APP=my-heroku-app ./scripts/heroku.shYou must create a SSH Key and transfer this to Heroku and Travis
ssh-keygen -t rsa -f ~/.ssh/id_herokuWarning: don't use password, just tap enter for the passphrase. Add this key to Heroku: Managing Your SSH Keys
For add SSH Key to Travis, you have a script for that.
FILE=~/.ssh/id_heroku ./scripts/travis-ssh.shCopy/Past the output to your .travis.yml
env:
global:
- secure: "Mr5Hk9o4/3FDrPS6W7bpkt9DSGvKY3syT.../DunMf4mukYS52rqf7ED3g7qcZNbB8bUB7mw="
- secure: "F3kKrUnlmoZ/BjIvX9YOiqouP3cfi4QGD...JIMs8Qxv8rQ8q1IKABk/OjXSXQ4uXBIZTaQM="
- secure: "PNlNhimaNL+b2zW/NARpgZZfy91MShFk/...JEXG7/5Xw8XpRnE7YSYatpmcZEITh6bY5Cak="
- secure: "OWTu+nJ9tbTnrT3knKRySYfs7L5MUlp0B...lxIzVCmP93+eiWdYlAIqlrQVPTEjwSpFJ1YM="
- secure: "PYVGN9I+EEb7INgB8vfk31HK9vs7KUK4t...1lMzBZ9QnudmkfhWcntPZ0REBMev93Ubm1Vg="
- secure: "GB5Ilsb+vIBU9BHI6ecooHaWATYp8HaG8...YnxIbcCcD5A7F5t8jXnt5kNWpDrw6lsNqsr0="
- secure: "BjCItlrxmuGoS+WPkgKWK5Mx7WwFV74v8...5Teyddh4jr9eEeKd0UyjdjhbKl7UsYb3ZQBM="
- secure: "SILo9jttohP904KGwRps5zmM3lNjhiju4...lQ/2tAiH4+Gu1wLS64aKXZaddpnkkuNrovcI="
- secure: "AC8qsl1jSWGFzpYaOjAbjszySIReP9CyM...8G2nuBUZkNG0hWGq+MUADDndvuedrWtAwWwc="
- secure: "AFuJ5oW7ny/wC/zIC7v9+aRenohlxH1Ze...R2DZgPVBMvJm/BwpMgO5gS5jtXpXKJ9oeNDs="
- secure: "XlBaCu7CYGwLulmsQKP0ngzCqsKrwDS7G...H72iMgyWCmRDBiVhlKRWxAaTGdcm2J4myXKI="
- secure: "e+gQtJrsxUxEBK2jW1Z+MKrLlccU/EVHW...GOqXt27Be5hR0BnmqS6ktthTNZw0ZGSJAZn0="
- secure: "fapYx+8qI8rKOt05FCHoWQ/57xthi0Q56...V4NSbLqgL8j1GXgzqFlWdW1aMUYqrBUrdj8U="
- secure: "RTZnOGEVz4HP90d3dXrBZ7+u/UK/1H3CK...PRMhtXRsgcKc6pEP3Hixm3N8xerfLBeM8U3E="
- secure: "F71xdB821SMfgkGAZGAlGw2gd54obTVWN...ul1VaN9Ywpyuj2OM60SHQWmq0b3JmQnDBWes="
- secure: "STA3wj2WKmnDkvqcpDb73by/Cwqz/1Nsp...01Nq57AV/0nGbdrZlnopNfPSiZfBcDdMFJUM="
- secure: "ZbSFArUPRXyxdgdix4Apxxg0Z0khLN/zb...7NAcVrBiyyZOJ2PRYB2D2VbeOSJ/2oUYL5Gk="
- secure: "fBONuwxSqZs89TYZHdkYnHQelNxnexLW+...gS/oZ+ax3D3IuG6ruEwwAN5aMM17W9l7CrPw="
- secure: "chzc8pAFk9QSx+bUdvkYLdf5+JzLLw6kq...JFmHU5xhEH16Q68/exWyFsSyuWIl7MnXrrJc="
- secure: "YOUh2JQKsr6XxTlkNyIvxUZRcQt4HOC7x...UrcGW6V/HdwGJ82x+bfoo9ninTod3igyS4hU="
- secure: "G6Oj2L5yHLSxGZ7GmOHa2s8Z7ChUGJgUF...TVl+JjndvQHOaJgiYtn+fz61GPaxNc1++bVw="
- secure: "W2cDJ6ACKQQSALnzr1qj6sDHMAY84kMuu...BdGdRSwczwGWX+vnXU3qNtwYb6GwblDJ7PKs="
- secure: "Hb55+EgFFGw8h+EeoyfuOjBsldmly/i7s...yHCrhSl4/QVWDSpzt4XEGE0bjrwuJGsYRCi8="If you want to deploy your app just after commit the master, you can add these lines:
after_success:
- if [[ "$TRAVIS_BRANCH" == "master" ]]; then grunt build; fi
- BRANCH=master REPO="https://$GH_USER:$GH_PASSWORD@github.com/mazerte/test-footguard" ./scripts/gh-pages.sh
- BRANCH=master APP=test-footguard ./scripts/heroku.sh