Skip to content

geminiyellow/hybrid-boilerplate

 
 

Repository files navigation

hybrid-boilerplate

Overview

Provides a basic hybrid starter application using Ionic, Webpack and many other technologies. The main goals are to provide a commonjs application structure along with many of the common build tasks required for a project.

Application Libraries:

Build Libraries:

  • Gulp - Build System
  • JSCS - JavaScript Style Checker
  • JSHint - JavaScript Linter
  • webpack - Module Bundler
  • Karma - Test Runner
  • BrowserSync - Browser Testing and Live Reloading
  • Plato - Code Analysis Reporting
  • Dgeni - Documentation Generator
  • GitFlow - Git workflow for managing branching and releases
  • git-promise - Used during build to run git commands
  • conventional-changelog - Automatic changelog generation from git commits
  • gulp-todo - Generates markdown page from TODO messages in source scripts
  • gulp-bump - Increments json versions during release in package.json and bower.json
  • gulp-xml-editor - Increments xml version during release in Cordova config.xml
  • gulp-gh-pages - GitHub gh-pages site generation

The above represents a partial list of some of the libraries used. For a complete list of dependencies, refer to the package.json and bower.json.

Generated Changelog and TODOs

Dependencies

  • git-flow needs to be installed for doing releases

Quick Start

Fork and clone the repository

$ git clone <your_fork>

Install the dependencies

$ npm install

Initialize project settings (TODO)

$ gulp init

Watch Mode (this will watch the webpack bundle and run browser-sync)

$ gulp watch

Release Mode (git flow release, updates versions, docs and gh-pages site)

$ gulp release [--major || --minor]

Optionally a major or minor argument can be passed to represent a major or minor release. By default release will do a patch release incrementing the last part of the version. The version consists of the following parts: MAJOR.MINOR.PATCH. If gulp release is run with no arguments and the version is 1.0.0, it would increment to 1.0.1.

Adding Cordova Plugins

$ cordova plugins add com.ionic.keyboard org.apache.cordova.console org.apache.cordova.device

Adding Cordova Platforms

$ cordova platform add ios

Build

$ gulp && cordova build

Running in the emulator

$ cordova emulate ios

About

Provides a starter project for Ionic apps

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 88.2%
  • HTML 9.0%
  • CSS 2.8%