About Apache Cordova™

Apache Cordova is a set of device APIs that allow a mobile app developer to access native device function such as the camera or accelerometer from JavaScript. Combined with a UI framework such as jQuery Mobile or Dojo Mobile or Sencha Touch, this allows a smartphone app to be developed with just HTML, CSS, and JavaScript.

When using the Cordova APIs, an app can be built without any native code (Java, Objective-C, etc) from the app developer. Instead, web technologies are used, and they are hosted in the app itself locally (generally not on a remote http server).

And because these JavaScript APIs are consistent across multiple device platforms and built on web standards, the app should be portable to other device platforms with minimal to no changes.

Apps using Cordova are still packaged as apps using the platform SDKs, and can be made available for installation from each device's app store.

Cordova provides a set of uniform JavaScript libraries that can be invoked, with device-specific native backing code for those JavaScript libraries. Cordova is available for the following platforms: iOS, Android, Blackberry, Windows Phone, Palm WebOS, Bada, and Symbian.

If you want to use Cordova in your mobile application, take a look at our documentation. It includes Getting Started guides, the JavaScript APIs reference and examples, instructions on Upgrading from previous versions of Cordova, how to write your own Cordova plugin, and more. The selector in the top-right corner of the documentation will let you pick different Cordova versions and language translations.

Apache Cordova graduated in October 2012 as a top level project within the Apache Software Foundation (ASF). Through the ASF, future Cordova development will ensure open stewardship of the project. It will always remain free and open source under the Apache License, Version 2.0.


News Subscribe

See all entries


Want to Contribute?

Contributors are welcome! The JIRA issue tracker and the dev mailing list are good places to identify areas to help out in.
Search the issue tracker:

Next, clone the git repository for the project you are wishing to contribute to (see below). We recommend employing a certain type of git workflow, please see our wiki article for more information.

To share your changes with the community, you can send a pull request on GitHub to the Apache git mirrors. You can also advocate for your changes directly on our mailing list.

In order for your changes to be accepted, you need to sign and submit an Apache ICLA (Individual Contributor License Agreement). Then your name will appear on the list of CLAs signed by non-committers or Cordova committers.

Some additional information may be found on our Apache project page.

For detailed instruction on how to contribute for a specific platform / topic, choose a repository from below and review the README:


Mailing List


Dev Mailing List

Dev mailing list is a place for discussion about developing Apache Cordova.
If you are a Cordova user looking for help, use the cordova tag on Stack Overflow.


Commits Mailing List

Commits mailing list tracks commit logs for Apache Cordova repos.


Issues Mailing List

Issues mailing list tracks comments and updates to Jira items regarding Apache Cordova.


Download & Archives

It is recommended that the NPM cordova CLI be installed rather than downloading this .zip version. For more information on installing the npm version see the Command-Line Interface section of the documentation.

In addition to the source zip, the OpenPGP keys, MD5, SHA, and artwork are also available.

Older versions can be downloaded from the archive.