Application can be run in a local http server, or emulated/released to Android/iOS
A lot of useful gulp tasks, like:
gulp - watch for changes + browser-sync (http server with livereload) + weinre debugger
gulp cordova:emulate:ios - run application in iOS emulator
gulp cordova:run:android - run application on Android's devise
Run gulp help or see gulp/tasks.coffee for more information about all tasks
Useful hooks and tweaks, which allow you to deploy your cordova app out-of-the-box
SASS + CoffeeScript + Jade combo
Support for multiple environments, like development, staging, production (configuration available in gulpfile.coffee)
Tests configured and working: unit (karma + mocha) and end to end (protractor)
Rollbar support (configured, working in angular functions and support for uploading the sourcemaps to Rollbar server)
Requirements
NodeJS
Cordova 4.2+
Android or iOS SDK installed and configured (required only if you want to deploy the app to native mobile platforms - you can run gulp server without that)
How to install
git clone jtomaszewski/ionicstarter-mobile
cd ionicstarter-mobile
git submodule update --init --recursive
# install dependencies
npm install
npm install -g gulp
bower install
brew install imagemagick # or `apt-get install imagemagick`, if you're on linux
gulp # build www/ directory and run http server on 4440 port
If you get "too many files" error, try: ulimit -n 10000. You may want to add this line to your .bashrc / .zshrc / config.fish.
What does the gulp build do?
More or less:
All .scss, .coffee, .jade files from app/ will be compiled and copied to www/
All .ejs files from assets/ will be compiled to www/.
All other files from assets/ will be copied to www/.
For detailed description, see gulpfile.coffee.
P.S. www/ is like dist/ directory for Cordova. That's why it's not included in this repository, as it's fully generated with gulp.
gulp test:unit # using PhantomJS
gulp test:unit --browsers Chrome # or using Google Chrome
e2e tests (protractor & selenium)
gulp # your www/ directory should be built and served at :4400 port
node_modules/.bin/webdriver-manager start & # run selenium server in the background
gulp test:e2e # finally, run e2e tests
How to run on mobile?
I recommend tmux for handling multiple terminal tabs/windows ;)
Copy .envrc.android-sample or .envrc.ios-sample to .envrc and configure it.
Ofcourse, if you're a Mac user and you can compile both Android and iOS on the same machine, you can include all the variables from both of these files in only one .envrc .
Also, make sure you have all the keys and certificates needed stored in keys/android/ and keys/ios/:
请发表评论