The best place to start with Ionic is our documentation page.
Note: Ionic currently best supports iOS 6+ and Android 4.1+, with limited support for Android 2.3. Ionic is changing quickly as we work towards the beta.
What is Ionic?
We built Ionic because we wanted a framework that focused on building hybrid native apps, rather than mobile websites. We wanted this framework to be obsessive about great design and performance. A framework that left the past behind and focused on the future where mobile devices could make HTML5 feel native.
It's important to realize that Ionic is not a replacement for frameworks used for building mobile web apps. There are a lot of great solutions that work well for websites, like jQuery Mobile.
Ionic is also not a good solution if you need to support older generation devices. Our compatibility starts at iOS 6 and Android 4.1. We will never support versions earlier than those. This is a framework for the future. Learn more: Where does the Ionic Framework fit in?
To start using ionic, you have two options: copy over the built JS and CSS files, or
ionic tool (ionic-cli) which can be installed through npm:
Then, you can start a new ionic project by running:
- Download the latest stable release from:
- The release folder of this repository
- The Ionic CDN: Latest Release
bower install ionic
- Download the bleeding edge just-from-master release from:
Once you have a release, use
For most cases, you'll need AngularJS as well. This is bundled in
- Follow @ionicframework on Twitter.
- Subscribe to the Ionic Newsletter.
- Have a question that's not a feature request or bug report? Discuss on the Ionic Forum.
- Read our Blog.
- Have a feature request or find a bug? Submit an issue.
npm install && npm install -g gulp protractorto setup
- (if you wish to run end-to-end tests):
webdriver-manager update --chrometo install the webdriver.
gulp buildto build
gulp docsto generate docs (read Documentation below for how to test docs locally).
gulp build --releaseto build with minification & strip debugs
gulp watchto watch and rebuild on change
gulp karmato test one-time
gulp karma-watchto test and re-run on source change
gulp protractorto test e2e tests locally
gulp cloudtestto run e2e tests in the cloud
- To test documentation, follow these steps:
- Clone ionic-site to
./tmp/ionic-site- this is where the
gulp docstask builds to.
./tmpis the folder that travis uses to do all of its tasks.
mkdir tmp && git clone email@example.com:driftyco/ionic-site tmp/ionic-site
- Make jekyll rebuild whenever you change the site.
cd tmp/ionic-site && jekyll serve -w
- Go back to project root and build the docs
- Open localhost:4000 and see your changes! Re-run
gulp docsagain whenever you change something, and jekyll will update the site.
- Clone ionic-site to
- Uses http://github.com/ajoslin/conventional-changelog conventions
Pushing New Release of Ionic
- Almost all of the logic for releasing Ionic is done on the Travis server
- To push a new release:
- Update package.json version to new version
- Update package.json codename to new codename
- Generate changelog with
gulp changelogand make sure it is OK
- Commit these and push to master
- Travis will detect that this commit changed the version in package.json and push out all necessary for this new release (tags, release files, site config, ...)
Ionic is licensed under the MIT Open Source license. For more information, see the LICENSE file in this repository.