You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by js...@apache.org on 2014/07/07 23:43:56 UTC

[50/51] [partial] CB-7087 Retire blackberry10/ directory

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/.jshintignore
----------------------------------------------------------------------
diff --git a/.jshintignore b/.jshintignore
new file mode 100644
index 0000000..41c3629
--- /dev/null
+++ b/.jshintignore
@@ -0,0 +1,6 @@
+framework/lib/jnext.js
+bin/test/cordova/unit/params-bad.json
+bin/templates/project/cordova/lib/xml-helpers.js
+bin/templates/project/cordova/third_party/*
+bin/templates/project/lib/*
+bin/templates/project/www/**/*

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/.jshintrc
----------------------------------------------------------------------
diff --git a/.jshintrc b/.jshintrc
new file mode 100644
index 0000000..84db82c
--- /dev/null
+++ b/.jshintrc
@@ -0,0 +1,73 @@
+{
+    "predef": [
+        "escape",
+        "unescape",
+        //Jasmine
+        "jasmine",
+        "it",
+        "describe",
+        "xit",
+        "xdescribe",
+        "beforeEach",
+        "afterEach",
+        "runs",
+        "waits",
+        "waitsFor",
+        "spyOn",
+        "expect",
+        "global",
+        //Webworks
+        "qnx",
+        "chrome",
+        "blackberry",
+        "internal",
+        "JNEXT",
+        "frameworkModules",
+        //Node
+        "__dirname",
+        "GLOBAL",
+        "process",
+        "exports",
+        "module",
+        "NamedNodeMap",
+        "require",
+        "Node",
+        "JSZip",
+        //UI Components
+        "x$",
+        "iris",
+        //Browser
+        "DOMElement",
+        "atob",
+        //automated tests
+        "showOverlay",
+        "hideOverlay"
+    ],
+
+    "node" : false,
+    "browser" : true,
+
+    "boss" : false,
+    "curly": false,
+    "bitwise" : false,
+    "white": true,
+    "indent": 4,
+    "evil": false,
+    "devel": true,
+    "debug": false,
+    "eqeqeq": true,
+    "forin": true,
+    "immed": true,
+    "laxbreak": false,
+    "newcap": true,
+    "noarg": true,
+    "noempty": false,
+    "nonew": false,
+    "nomen": false,
+    "onevar": true,
+    "plusplus": false,
+    "regexp": false,
+    "undef": true,
+    "sub": true,
+    "strict": false
+}

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/.npmignore
----------------------------------------------------------------------
diff --git a/.npmignore b/.npmignore
new file mode 100644
index 0000000..db4145c
--- /dev/null
+++ b/.npmignore
@@ -0,0 +1,2 @@
+.gitignore
+.gitkeep

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/CONTRIBUTING.md
----------------------------------------------------------------------
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000..f7dbcab
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,37 @@
+<!--
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+-->
+
+# Contributing to Apache Cordova
+
+Anyone can contribute to Cordova. And we need your contributions.
+
+There are multiple ways to contribute: report bugs, improve the docs, and
+contribute code.
+
+For instructions on this, start with the 
+[contribution overview](http://cordova.apache.org/#contribute).
+
+The details are explained there, but the important items are:
+ - Sign and submit an Apache ICLA (Contributor License Agreement).
+ - Have a Jira issue open that corresponds to your contribution.
+ - Run the tests so your patch doesn't break existing functionality.
+
+We look forward to your contributions!

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/Gruntfile.js
----------------------------------------------------------------------
diff --git a/Gruntfile.js b/Gruntfile.js
new file mode 100644
index 0000000..1847910
--- /dev/null
+++ b/Gruntfile.js
@@ -0,0 +1,41 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+module.exports = function (grunt) {
+    grunt.initConfig({
+        jshint: {
+            all: [
+                'Gruntfile.js',
+                'bin/**/*.js',
+                'framework/**/*.js'
+            ]
+        },
+        jasmine_node: {
+            options: {
+                matchall: true
+            },
+            all: [
+                'bin/test',
+                'framework/test'
+            ]
+        }
+
+    });
+
+    grunt.loadNpmTasks('grunt-contrib-jshint');
+    grunt.loadNpmTasks('grunt-jasmine-node');
+
+    grunt.registerTask('lint', ['jshint']);
+    grunt.registerTask('test', ['jasmine_node']);
+    grunt.registerTask('default', ['lint', 'test']);
+};

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/LICENSE
----------------------------------------------------------------------
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..cbfc221
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,268 @@
+
+                               Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+
+For the template/project/lib/ant-contrib/ant-contrib-1.0b3.jar component:
+
+   The Apache Software License, Version 1.1
+
+   Copyright (c) 2001-2003 Ant-Contrib project.  All rights reserved.
+
+   Redistribution and use in source and binary forms, with or without
+   modification, are permitted provided that the following conditions
+   are met:
+
+   1. Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+
+   2. Redistributions in binary form must reproduce the above copyright
+      notice, this list of conditions and the following disclaimer in
+      the documentation and/or other materials provided with the
+      distribution.
+
+   3. The end-user documentation included with the redistribution, if
+      any, must include the following acknowledgment:
+         "This product includes software developed by the
+          Ant-Contrib project (http://sourceforge.net/projects/ant-contrib)."
+      Alternately, this acknowledgment may appear in the software itself,
+      if and wherever such third-party acknowledgments normally appear.
+
+   4. The name Ant-Contrib must not be used to endorse or promote products
+      derived from this software without prior written permission. For
+      written permission, please contact
+      ant-contrib-developers@lists.sourceforge.net.
+
+   5. Products derived from this software may not be called "Ant-Contrib"
+      nor may "Ant-Contrib" appear in their names without prior written
+      permission of the Ant-Contrib project.
+
+   THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+   WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+   OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+   DISCLAIMED.  IN NO EVENT SHALL THE ANT-CONTRIB PROJECT OR ITS
+   CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+   USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+   ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+   OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+   OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+   SUCH DAMAGE.
+   ====================================================================
+
+For the template/project/www/json2.js component:
+
+    http://www.JSON.org/json2.js
+    2010-03-20
+
+    Public Domain.
+
+    NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.
+
+    See http://www.JSON.org/js.html
+
+
+    This code should be minified before deployment.
+    See http://javascript.crockford.com/jsmin.html
+
+    USE YOUR OWN COPY. IT IS EXTREMELY UNWISE TO LOAD CODE FROM SERVERS YOU DO
+    NOT CONTROL.

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/NOTICE
----------------------------------------------------------------------
diff --git a/NOTICE b/NOTICE
new file mode 100644
index 0000000..23360ce
--- /dev/null
+++ b/NOTICE
@@ -0,0 +1,8 @@
+Apache Cordova
+Copyright 2012 The Apache Software Foundation
+
+This product includes software developed by
+The Apache Software Foundation (http://www.apache.org)
+
+This product includes software developed by
+Ant-Contrib project (http://sourceforge.net/projects/ant-contrib).

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index 4e02a19..14bc923 100644
--- a/README.md
+++ b/README.md
@@ -1,14 +1,169 @@
-# Apache Cordova for BlackBerry
-===
+Apache Cordova for BlackBerry 10
+================================
 
-This repo contains **Cordova** *platforms*:
+**Apache Cordova** is an application development platform that allows you to use common web technologies, primarily **HTML5**, **JavaScript**, and **CSS**, to create applications for mobile devices. **Cordova** uses a standard set of APIs to access common device features. Additional plugins allow you to access **BlackBerry 10** specific APIs, so that you can extend your application to tightly integrate with the **BlackBerry 10 OS**.
 
-[blackberry10](blackberry10/) - **BlackBerry 10**
+Requirements
+------------
 
-`git checkout 2.9.0` for:
-[playbook](playbook/) - **BlackBerry Tablet OS**
+Cordova for BlackBerry 10 has the following software requirements:
 
-`git checkout 2.8.0` for:
-[blackberry](blackberry/) - **BBOS** 5 to 7
+-   **Windows XP** (32-bit), **Windows 7** (32-bit and 64-bit), or **Mac OS X** 10.6.4+
+-   **Node.js** (> 0.9.9) [Download node.js now](http://nodejs.org/)
+-   **BlackBerry 10 Native SDK**. [Download the BlackBerry 10 Native SDK now.](http://developer.blackberry.com/native/download/)
 
-Please see README files in the sub folders for more information.
+    After installing the Native SDK, its tools must be added to your system path. Either manually add the bin directory to your path or run the following scripts:
+    -    *Linux/OS X* `source [BBNDK directory]/bbndk-env.sh`
+    -    *Windows* `[BBNDK directory]\bbndk-env.bat`
+    
+Conventions
+-----------
+The instructions in this document will generally use `/` as the path separator. On *Windows*, you should enter `\` where you see `/` in these instructions.
+
+Setting up your signing keys
+----------------------------
+
+Before starting development, you'll need to register for your code signing key and debug token. The signing key allows you to sign your completed app so that you can distribute it through **BlackBerry World**. The debug token allows you to test an unsigned app on a BlackBerry 10 device. You do not need to create and install the debug token yourself; if you supply the keystore password, the build script will create and install the debug token for you.
+
+-   [Register for your code signing key now.](https://www.blackberry.com/SignedKeys/codesigning.html)
+-   [Set your computer up for code signing. ](http://developer.blackberry.com/html5/documentation/set_up_for_signing.html)
+-   [Learn more about debug tokens.](http://developer.blackberry.com/html5/documentation/running_your_bb10_app_2008471_11.html)
+
+Creating your project
+-------------------------
+
+To create a new project, you use the `create` command to set up the folder structure for your app.
+
+1.  On the command line, navigate to the folder where you extracted Cordova.
+2.  Run the `create` command using the following syntax:
+
+        bin/create <path-to-project> [<project-package> [<project-name> [<path-to-www-template>]]]
+
+This command creates the folder structure for your project at the specified location. All of your project resource files should be stored in the `<path-to-project>/www` folder, or in a subfolder within it.
+
+where
+
+- `<path-to-project>` specifies the directory to create for your project
+- `<project-package>` specifies a reverse domain style identifier
+- `<project-name>` specifies the app's display name
+- `<path-to-www-template>` specifies the directory to use as a template
+
+Adding and managing targets
+---------------------------
+
+A target refers to a **BlackBerry 10** *device* or *simulator* that you will use to test your app. Targets are added directly to your project; you can add multiple targets to your project, each with a unique name. Then, when you want to deploy your app to a particular target, you can simply refer to that target by name when you run your script.
+
+###Add a target
+
+To add a target, on the command line, type the following command:
+
+        <path-to-project>/cordova/target add <name> <ip-address> [--type simulator] [--password <password>] [--pin <device-pin>]
+
+where
+
+-   `<name>`  specifies a unique name for the target.
+-   `<ip-address>`  specifies the ip address of the **BlackBerry 10** *device* or *simulator*.
+-   `--type simulator` If not provided, *device* is assumed.
+-   `--password <password>`  specifies the password for the *device*/*simulator*. This is only necessary if the *device*/*simulator* is password protected.
+-   `--pin <device-pin>`  specifies the `PIN` of the **BlackBerry 10** *device*, which identifies that device as a valid host for the debug token. This argument is required only if you are creating a *debug token*.
+
+###Remove a target
+
+To remove a target, on the command line, type the following command:
+
+        <path-to-project>/cordova/target remove <name>
+
+Building your app
+-----------------
+
+To build your app, run the `build` script. You can build the app in either *release mode* or in *debug mode*.
+
+-   When you build the app in *release mode*, you are preparing it for distribution through **BlackBerry World**. The script packages your app resources and plugins together in a `.bar file`, then *signs* the app.
+-   When you build the app in *debug mode*, you are preparing it to be tested. The script packages your app resources and plugins together in a `.bar file`, but does not sign it. The script can also deploy the app onto a previously defined target. If you have not already created and installed a *debug token*, you can supply the keystore password, and the build script will create and install the *debug token* for you as well.
+
+    *Debug mode* also enables **Web Inspector** for the app, which allows you to remotely inspect the source code. A prompt displays the URL that you can use to connect to and inspect your app. For more information on using **Web Inspector**, see [Debugging using Web Inspector](http://developer.blackberry.com/html5/documentation/web_inspector_overview_1553586_11.html).
+
+###Build your app in release mode
+
+To build your app in release mode, on the command line, type the following command:
+
+        <path-to-project>/cordova/build release [<target>] [--keystorepass <password>] [--buildId <number>] [--params <params-JSON-file>]
+
+where
+
+-   `<target>`  specifies the name of a previously added target. If `<target>`  is not specified, the default target is used, if one has been created. This argument is only required if you want the script to deploy your app to a BlackBerry device or emulator and you have not created a default target. Additionally, if `<target>`  is a device, then that device must be connected to your computer by USB connection or be connected to the same Wi-Fi network as your computer.
+-   `--keystorepass <password>`  specifies the password you defined when you configured your computer to sign applications (by default you'll be prompted for this if it isn't otherwise configured).
+-   `--buildId <number>`  specifies the build version number of your application. Typically, this number should be incremented from the previous signed version. This argument is optional.
+-   `--params <params-JSON-file>`  specifies a JSON file containing additional parameters to pass to downstream tools. This argument is optional.
+
+###Build your app in debug mode
+
+To build your app in debug mode, on the command line, type the following command:
+
+        <path-to-project>/cordova/build debug [<target>] [--params <params-JSON-file>] [--loglevel <error|warn|verbose>]
+
+where
+
+-   `<target>`  specifies the name of a previously added target. If `<target>`  is not specified, the default target is used, if one has been created. This argument is only required if you want the script to deploy your app to a BlackBerry device or emulator and you have not created a default target. Additionally, if `<target>`  is a device, then that device must be connected to your computer by USB connection or be connected to the same Wi-Fi network as your computer.
+-   `--params <params-JSON-file>`  specifies a JSON file containing additional parameters to pass to downstream tools.
+-   `--loglevel <level>`  specifies the log level. The log level may be one of `error`, `warn`, or `verbose`.
+
+Note that all of these parameters are optional. If you have previously defined a default target (and installed a debug token, if that target is a BlackBerry device), you can run the script with no arguments, and the script will package your app and deploy it to the default target. For example:
+
+        <path-to-project>/cordova/build debug
+
+Deploying an app
+-------------------------
+
+You can test your app using either a BlackBerry device or an emulator. Before deploying your app, you must first create a target for the device or emulator you want to deploy your app to.
+
+The run script will first build  your app. If you intend to deploy an app to a physical device for testing, you must first install a debug token on that device. If you specify the `--keystorepass <password>` argument when running the run script, the script will create and install the debug token for you. You do not need a debug token to test your app on an emulator, even if that app is unsigned.
+
+To deploy your app to a device or emulator, on a command line type the following command:
+
+        <path-to-project>/cordova/run <target> [--no-build]
+
+where
+-   `<target>`  specifies the name of a previously added target. If `<target>`  is a device, then that device must be connected to your computer by USB connection or be connected to the same Wi-Fi network as your computer.
+
+-   `-no--build` will use the most recently built version of the application rather than re-building. This is useful to test an application in release mode.
+
+Adding and managing plugins
+---------------------------
+
+To add additional functionality that is outside of the core features of Cordova, you'll need to add plugins. A plugin represents a set of APIs that provide access to additional features of the platform.
+
+In order to use a plugin, you must first add it into your project. Once added into your project, the plugin will be bundled with your project during the build process, to ensure that your app has access to all the APIs it needs.
+
+To add and manage plugins you can use the plugman tool. It is available via npm (ie npm install -g plugman)
+
+###Add a plugin
+
+To add a plugin, on the command line, type the following command:
+
+        plugman install --platform blackberry10 --project . --plugin <id|path|url> [--variable NAME=name]
+
+###Remove a plugin
+
+To remove a plugin, on the command line, type the following command:
+
+        plugman uninstall --platform blackberry10 --project . --plugin <id>
+
+###View a list of installed plugins
+
+To view a list of installed plugins, on the command line, type the following command:
+
+        plugman ls
+
+Historical notes
+================
+
+If you are looking for **BlackBerry Tablet OS** or **BBOS** *classic*, you need to check them out via a branch:
+
+**BlackBerry Tablet OS**:
+
+        git checkout 2.9.0
+
+**BBOS** 5 to 7:
+
+        git checkout 2.8.0

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/RELEASENOTES.md
----------------------------------------------------------------------
diff --git a/RELEASENOTES.md b/RELEASENOTES.md
new file mode 100644
index 0000000..4dc153b
--- /dev/null
+++ b/RELEASENOTES.md
@@ -0,0 +1,59 @@
+<!--
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#  KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+-->
+## Release Notes for Cordova BlackBerry ##
+
+### 3.1.0 ###
+
+[CB-4268] Rework util functions to support getting list of connected devices / emulators
+[CB-4268] Add support for --device and --emulator to run script
+[CB-4292] Update plugman to 0.9.10
+[CB-4342] Detect USB connected device
+[CB-4065] Remove lib files after frameworkModules.js is generated
+[CB-4734] Fixed issue where plugins are not added to frameworkModules
+[CB-4423] Warn when special characters are used in create script
+[CB-4344] Auto-detect started simulator
+[CB-4272] Improve error messages related to debug tokens and signing
+[CB-4292] Remove remaining plugins
+[CB-4481] Removing permissions from template since not all apps should need them
+[CB-4259] Removing plugman and cordova/plugin script
+[CB-4634] Updating the default app to match cordova-app-hello-world
+[CB-4544] Adds a --query flag to query the user for their password when we need it      - Rewrite the run script for maintenance
+[BlackBerry10] Fixing a bug with debugtoken generation without prompt
+Updating scripts to make init calls surrounded in quotes
+[BlackBerry10] Updated init to work on Windows 7 with long paths         with spaces
+[CB-4730] [BlackBerry10] Updating init calls to work on Win 7 64         with long paths.
+[CB-4785] Fixing --no-build flag for run command
+[CB-4732] Re-writing build script to use async
+Syncing hello-world-app for 3.1 release
+[CB-4076] Added support for the origin attribute in config.xml
+[CB-4076] Modified config-parser to default to the uri attribute
+[CB-4563] Migrated blackberry.app parameters to preferences
+[CB-4812] Support for "default" value in the orientation preference
+[CB-3798] Provide support for optional localized node/npm/bb-tools
+Plugman version bump to 0.10.0
+[CB3439] Introduces --web-inspector flag to enable webinspector for signed builds
+[CB-3798] Fixed CORDOVA_BBTOOLS env variable with spaces in path
+[CB-3798] Refactored all exec calls to use newly created utility exec function to avoid path with spaces errors
+corrected playbook create tool usage
+[CB-4346] changed utils genbarname function to return string as per ticket description, updated README.md section on create command
+CB-4875 updated readme with info on accessing last supported versions of BBOS and Playbook
+CB-4876 removal of playbook implementation
+

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/VERSION
----------------------------------------------------------------------
diff --git a/VERSION b/VERSION
new file mode 100644
index 0000000..86bab9c
--- /dev/null
+++ b/VERSION
@@ -0,0 +1 @@
+3.6.0-dev

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/check_reqs
----------------------------------------------------------------------
diff --git a/bin/check_reqs b/bin/check_reqs
new file mode 100755
index 0000000..6926c39
--- /dev/null
+++ b/bin/check_reqs
@@ -0,0 +1,23 @@
+#!/usr/bin/env bash
+<<COMMENT
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+COMMENT
+BIN_DIR=$(dirname "$0")
+
+#init will execute check reqs logic
+source "$BIN_DIR/init"

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/check_reqs.bat
----------------------------------------------------------------------
diff --git a/bin/check_reqs.bat b/bin/check_reqs.bat
new file mode 100644
index 0000000..0de7c75
--- /dev/null
+++ b/bin/check_reqs.bat
@@ -0,0 +1,23 @@
+@ECHO OFF
+goto comment
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+:comment
+
+call "%~dp0init"
+if ERRORLEVEL 1 exit /B %ERRORLEVEL%
+

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/create
----------------------------------------------------------------------
diff --git a/bin/create b/bin/create
new file mode 100755
index 0000000..01dfa6e
--- /dev/null
+++ b/bin/create
@@ -0,0 +1,33 @@
+#!/usr/bin/env bash
+<<COMMENT
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+COMMENT
+#
+# create a cordova/blackberry10 project
+#
+# USAGE
+#   ./create path [package [id [name [template]]]]
+#
+
+BIN_DIR=$(dirname "$0")
+
+source "$BIN_DIR/init"
+
+CURRENT_DIR=$(pwd)
+
+"$CORDOVA_NODE/node" "$BIN_DIR"/lib/create.js "$@"

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/create.bat
----------------------------------------------------------------------
diff --git a/bin/create.bat b/bin/create.bat
new file mode 100644
index 0000000..fc7d08e
--- /dev/null
+++ b/bin/create.bat
@@ -0,0 +1,26 @@
+@ECHO OFF
+goto comment
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+:comment
+set "BIN_DIR=%~dp0"
+
+call "%BIN_DIR%init"
+if ERRORLEVEL 1 exit /B %ERRORLEVEL% 
+
+"%CORDOVA_NODE%\node" "%BIN_DIR%lib\create.js" %*
+if ERRORLEVEL 1 exit /B %ERRORLEVEL%

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/init
----------------------------------------------------------------------
diff --git a/bin/init b/bin/init
new file mode 100755
index 0000000..90f1a0c
--- /dev/null
+++ b/bin/init
@@ -0,0 +1,87 @@
+#!/usr/bin/env bash
+<<COMMENT
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+COMMENT
+CURRENT_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
+CORDOVA_HOME_DIR=$HOME/.cordova/lib/blackberry10/cordova/$(cat "$CURRENT_DIR/../VERSION")
+LOCAL_NODE_BIN=$CORDOVA_HOME_DIR/bin/dependencies/node/bin
+LOCAL_BBTOOLS=$CORDOVA_HOME_DIR/bin/dependencies/bb-tools/bin
+
+#Skip all logic if init has already been run (env variable have been set already...)
+if [ -z "$CORDOVA_NODE" ] || [ -z "$CORDOVA_BBTOOLS" ]; then
+
+    #set CORDOVA_NODE
+    if [ -x "$LOCAL_NODE_BIN" ]; then
+        #set CORDOVA_NODE to local node version, if exists
+        CORDOVA_NODE=$LOCAL_NODE_BIN
+    else
+        #set CORDOVA_NODE to whichever node is on path, if exists
+        NODE_PATH=$(command -v node)
+        if [ ! -z "$NODE_PATH" ]; then
+            CORDOVA_NODE=$(dirname "$NODE_PATH")
+        fi
+    fi
+    export CORDOVA_NODE=$CORDOVA_NODE
+
+    #set CORDOVA_BBTOOLS
+    if [ -x "$LOCAL_BBTOOLS" ]; then
+        #set CORDOVA_BBTOOLS to local bbtools, if exists
+        CORDOVA_BBTOOLS=$LOCAL_BBTOOLS
+    else
+        #set CORDOVA_BBTOOLS to whichever bbtools is on path, if exists
+        BBTOOLS_PATH=$(command -v blackberry-nativepackager)
+        if [ ! -z "$BBTOOLS_PATH" ]; then
+            CORDOVA_BBTOOLS=$(dirname "$BBTOOLS_PATH")
+        fi
+    fi
+    export CORDOVA_BBTOOLS=$CORDOVA_BBTOOLS
+
+fi
+
+#-------------check reqs---------------#
+NODE="$CORDOVA_NODE/node"
+JAVA=$(command -v java)
+PACKAGER="$CORDOVA_BBTOOLS/blackberry-nativepackager"
+DEPLOYER="$CORDOVA_BBTOOLS/blackberry-deploy"
+SIGNER="$CORDOVA_BBTOOLS/blackberry-signer"
+DEBUGTOKENREQUEST="$CORDOVA_BBTOOLS/blackberry-debugtokenrequest"
+
+if [ ! -x "$NODE" ]; then
+    echo node cannot be found on the path. Aborting.
+    EXIT_CODE=2
+elif [ ! -x "$JAVA" ]; then
+    echo java cannot be found on the path. Aborting.
+    EXIT_CODE=2
+elif [ ! -x "$PACKAGER" ]; then
+    echo blackberry-nativepackager cannot be found on the path. Aborting.
+    EXIT_CODE=2
+elif [ ! -x "$DEPLOYER" ]; then
+    echo blackberry-deploy cannot be found on the path. Aborting.
+    EXIT_CODE=2
+elif [ ! -x "$SIGNER" ]; then
+    echo blackberry-signer cannot be found on the path. Aborting.
+    EXIT_CODE=2
+elif [ ! -x "$DEBUGTOKENREQUEST" ]; then
+    echo blackberry-debugtokenrequest cannot be found on the path. Aborting.
+    EXIT_CODE=2
+fi
+
+if [ ! -z "$EXIT_CODE" ]; then
+    exit $EXIT_CODE
+fi
+

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/init.bat
----------------------------------------------------------------------
diff --git a/bin/init.bat b/bin/init.bat
new file mode 100644
index 0000000..f696081
--- /dev/null
+++ b/bin/init.bat
@@ -0,0 +1,127 @@
+@ECHO OFF
+goto comment
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+:comment
+setlocal enabledelayedexpansion
+
+set /P CORDOVA_VERSION=<"%~dp0..\VERSION"
+set "CORDOVA_HOME_DIR=!USERPROFILE!\.cordova\lib\blackberry10\cordova\!CORDOVA_VERSION!"
+set "LOCAL_NODE_BINARY=!CORDOVA_HOME_DIR!\bin\dependencies\node\bin"
+set "LOCAL_BBTOOLS_BINARY=!CORDOVA_HOME_DIR!\bin\dependencies\bb-tools\bin"
+
+set FOUNDWHERE=
+for /f "usebackq delims=" %%e in (`where where 2^>nul`) do (
+  if not defined FOUNDWHERE set "FOUNDWHERE=%%e"
+)
+if not defined FOUNDWHERE set "FOUNDWHERE=%~dp0\whereis"
+
+set FOUNDJAVAAT=
+for /f "usebackq delims=" %%e in (`"%FOUNDWHERE%" java 2^>nul`) do (
+  if not defined FOUNDJAVAAT set "FOUNDJAVAAT=%%~dpe"
+)
+:: While we could normally ask where.exe to search an arbitrary environment variable,
+:: it's too complicated to teach whereis.cmd to do that
+:: instead we're going to replace PATH with a special PATH
+:: In case you're curious, you can't nest ::'s inside ()s
+if not defined FOUNDJAVAAT (
+  setlocal enabledelayedexpansion
+  SET "PATH=%ProgramFiles(x86)%\java\jre7\bin;%ProgramW6432%\java\jre7\bin;"
+  for /f "usebackq delims=" %%e in (`"%FOUNDWHERE%" java 2^>nul`) do (
+    set "FOUNDJAVAAT=%%~dpe"
+  )
+  if defined FOUNDJAVAAT (
+    for /f "delims=" %%C in (""!FOUNDJAVAAT!"") do (
+      endlocal
+      set "FOUNDJAVAAT=%%~C"
+    )
+    if defined FOUNDJAVAAT (
+      set "PATH=!PATH!;!FOUNDJAVAAT!"
+    )
+  ) else (
+    endlocal
+  )
+)
+:: While there are two endlocal calls, they're mutually exclusive and bookend the setlocal
+
+if defined CORDOVA_NODE (
+  if exist "!CORDOVA_NODE!" (
+    if defined CORDOVA_BBTOOLS (
+      if exist "!CORDOVA_BBTOOLS!" (
+        goto end
+      )
+    )
+  )
+)
+
+if exist "!LOCAL_NODE_BINARY!" (
+  set "CORDOVA_NODE=!LOCAL_NODE_BINARY!"
+) else (
+  for /f "usebackq delims=" %%e in (`%FOUNDWHERE% node 2^>nul`) do (
+    set "CORDOVA_NODE=%%~dpe"
+  )
+)
+
+if exist "!LOCAL_BBTOOLS_BINARY!" (
+  set "CORDOVA_BBTOOLS=!LOCAL_BBTOOLS_BINARY!"
+) else (
+  for /f "usebackq delims=" %%e in (`%FOUNDWHERE% blackberry-nativepackager 2^>nul`) do (
+    set "CORDOVA_BBTOOLS=%%~dpe"
+  )
+)
+
+:end
+
+if not exist "%LOCAL_NODE_BINARY%" (
+  if not exist "%CORDOVA_NODE%\node.exe" (
+    echo node cannot be found on the path. Aborting.
+    exit /b 2
+  )
+)
+if not defined FOUNDJAVAAT (
+  echo java cannot be found on the path. Aborting.
+  exit /b 2
+)
+if not exist "!CORDOVA_BBTOOLS!\blackberry-nativepackager.bat" (
+  echo blackberry-nativepackager cannot be found on the path. Aborting.
+  exit /b 2
+)
+if not exist "!CORDOVA_BBTOOLS!\blackberry-deploy.bat" (
+  echo blackberry-deploy cannot be found on the path. Aborting.
+  exit /b 2
+)
+if not exist "!CORDOVA_BBTOOLS!\blackberry-signer.bat" (
+  echo blackberry-signer cannot be found on the path. Aborting.
+  exit /b 2
+)
+if not exist "!CORDOVA_BBTOOLS!\blackberry-debugtokenrequest.bat" (
+  echo blackberry-debugtokenrequest cannot be found on the path. Aborting.
+  exit /b 2
+)
+
+:: Export variables we want to share with the caller
+for /f "delims=" %%A in (""!CORDOVA_NODE!"") do (
+  for /f "delims=" %%B in (""!CORDOVA_BBTOOLS!"") do (
+    for /f "delims=" %%C in (""!PATH!"") do (
+      endlocal
+      set "CORDOVA_NODE=%%~A"
+      set "CORDOVA_BBTOOLS=%%~B"
+      set "PATH=%%~C"
+    )
+  )
+)
+exit /b 0

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/lib/config.js
----------------------------------------------------------------------
diff --git a/bin/lib/config.js b/bin/lib/config.js
new file mode 100644
index 0000000..c21a09f
--- /dev/null
+++ b/bin/lib/config.js
@@ -0,0 +1,50 @@
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+var fs = require('fs'),
+    path = require('path'),
+    PROPERTY_FILE_NAME = 'blackberry10.json',
+    CORDOVA_DIR = '.cordova',
+    DEFAULT_PROPERTY_FILE = {
+        targets: {
+        }
+    },
+    getCordovaDir = function () {
+        var homePath = process.env[(process.platform === 'win32') ? 'USERPROFILE' : 'HOME'],
+            cordovaPath = path.join(homePath, CORDOVA_DIR);
+        if (!fs.existsSync(cordovaPath)) {
+            fs.mkdirSync(cordovaPath);
+        }
+        return cordovaPath;
+    };
+
+module.exports = {
+    getProperties: function () {
+        var props, 
+            propertiesPath = path.join(getCordovaDir(), PROPERTY_FILE_NAME);
+        if (!fs.existsSync(propertiesPath)) {
+            this.writeProperties(DEFAULT_PROPERTY_FILE);
+        }
+        props = require(propertiesPath);
+        if (!props.targets) {
+            props.targets = {};
+        }
+        return props;
+    },
+    writeProperties: function (data) {
+        var contents = JSON.stringify(data, null, 4) + "\n",
+            propertiesPath = path.join(getCordovaDir(), PROPERTY_FILE_NAME);
+        fs.writeFileSync(propertiesPath, contents, 'utf-8');
+    }
+};

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/lib/create.js
----------------------------------------------------------------------
diff --git a/bin/lib/create.js b/bin/lib/create.js
new file mode 100644
index 0000000..45bcb09
--- /dev/null
+++ b/bin/lib/create.js
@@ -0,0 +1,205 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+/*
+ * create a cordova/blackberry10 project
+ *
+ * USAGE
+ *  ./create path [package [id [name [template]]]]
+ */
+
+var ERROR_VALUE = 2,
+    path = require("path"),
+    exit = require('exit'),
+    shell = require('shelljs'),
+    fs = require("fs"),
+    os = require("os"),
+    wrench = require("wrench"),
+    version = getVersion(),
+    project_path = validateProjectPath(),
+    app_id = process.argv[3],
+    app_name = process.argv[4] || 'WebWorks Application',
+    TARGETS = ["device", "simulator"],
+    TEMPLATE_PROJECT_DIR = path.join(__dirname, "..", "templates", "project"),
+    ROOT_PROJECT_DIR = path.join(__dirname, "..", ".."),
+    MODULES_PROJECT_DIR = path.join(__dirname, "..", "..", "node_modules"),
+    BOOTSTRAP_PROJECT_DIR = path.join(__dirname, "..", "..", "framework", "bootstrap"),
+    FRAMEWORK_LIB_PROJECT_DIR = path.join(__dirname, "..", "..", "framework", "lib"),
+    BIN_DIR = path.join(__dirname, ".."),
+    BUILD_DIR = path.join(__dirname, "..", "build"),
+    CORDOVA_JS_SRC = path.join(__dirname, "..", "..", "javascript", "cordova.blackberry10.js"),
+    update_dir = path.join(project_path, "lib", "cordova." + version),
+    native_dir = path.join(project_path, "native"),
+    template_dir = process.argv[5] || TEMPLATE_PROJECT_DIR,
+    js_path = "javascript",
+    js_basename = "cordova.js";
+
+function getVersion() {
+    var version = fs.readFileSync(path.join(__dirname,  "..", "..", "VERSION"));
+    if (version) {
+        return version.toString().replace( /([^\x00-\xFF]|\s)*$/g, '' );
+    }
+}
+
+function validPackageName(packageName) {
+    var domainRegex = /^[a-zA-Z]([a-zA-Z0-9])*(\.[a-zA-Z]([a-zA-Z0-9])*)*$/;
+    if (typeof packageName !== "undefined") {
+        if ((packageName.length > 50) || !domainRegex.test(packageName)) {
+            return false;
+        }
+    }
+    return true;
+}
+
+function validateProjectPath() {
+    if (!process.argv[2]) {
+        console.log("You must give a project PATH");
+        help();
+        exit(ERROR_VALUE);
+        return "";
+    } else {
+        return path.resolve(process.argv[2]);
+    }
+}
+
+function validate() {
+    if (fs.existsSync(project_path)) {
+        console.log("The project path must be an empty directory");
+        help();
+        exit(ERROR_VALUE);
+    }
+    if (!validPackageName(app_id)) {
+        console.log("[warning] App ID must be sequence of alpha-numeric (optionally separated by '.') characters, no longer than 50 characters.\n" +
+                    "special characters in '" + app_id + "' will be replaced by '_'");
+    }
+}
+
+function clean() {
+    if (fs.existsSync(BUILD_DIR)) {
+        wrench.rmdirSyncRecursive(BUILD_DIR);
+    }
+}
+
+function copyJavascript() {
+    wrench.mkdirSyncRecursive(path.join(BUILD_DIR, js_path), 0777);
+    shell.cp(CORDOVA_JS_SRC, path.join(BUILD_DIR, js_path));
+
+    //rename copied cordova.blackberry10.js file
+    fs.renameSync(path.join(BUILD_DIR, js_path, "cordova.blackberry10.js"), path.join(BUILD_DIR, js_path, js_basename));
+}
+
+function copyFilesToProject() {
+    var nodeModulesDest = path.join(project_path, "cordova", "node_modules"),
+        bbtoolsBinDest = path.join(project_path, "cordova", "dependencies", "bb-tools", "bin"),
+        bbtoolsLibDest = path.join(project_path, "cordova", "dependencies", "bb-tools", "lib"),
+        bbNativePackager = "blackberry-nativepackager",
+        bbSigner = "blackberry-signer",
+        bbDeploy = "blackberry-deploy",
+        bbDebugTokenRequest= "blackberry-debugtokenrequest";
+
+    // create project using template directory
+    wrench.mkdirSyncRecursive(project_path, 0777);
+    wrench.copyDirSyncRecursive(template_dir, project_path);
+    if (template_dir != TEMPLATE_PROJECT_DIR) {
+        wrench.copyDirSyncRecursive(path.join(TEMPLATE_PROJECT_DIR, 'cordova'), path.join(project_path, 'cordova'));
+    }
+
+    // copy repo level target tool to project
+    shell.cp(path.join(BIN_DIR, "target"), path.join(project_path, "cordova"));
+    shell.cp(path.join(BIN_DIR, "target.bat"), path.join(project_path, "cordova"));
+    shell.cp(path.join(BIN_DIR, "lib", "target.js"), path.join(project_path, "cordova", "lib"));
+    shell.cp(path.join(BIN_DIR, "lib", "config.js"), path.join(project_path, "cordova", "lib"));
+
+    // copy repo level init script to project
+    shell.cp(path.join(BIN_DIR, "whereis.cmd"), path.join(project_path, "cordova"));
+    shell.cp(path.join(BIN_DIR, "init.bat"), path.join(project_path, "cordova"));
+    shell.cp(path.join(BIN_DIR, "init"), path.join(project_path, "cordova"));
+
+    //copy VERSION file [used to identify corresponding ~/.cordova/lib directory for dependencies]
+    shell.cp(path.join(ROOT_PROJECT_DIR, "VERSION"), path.join(project_path));
+
+    // copy repo level check_reqs script to project
+    shell.cp(path.join(BIN_DIR, "check_reqs.bat"), path.join(project_path, "cordova"));
+    shell.cp(path.join(BIN_DIR, "check_reqs"), path.join(project_path, "cordova"));
+
+    // change file permission for cordova scripts because ant copy doesn't preserve file permissions
+    wrench.chmodSyncRecursive(path.join(project_path,"cordova"), 0700);
+
+    //copy cordova-*version*.js to www
+    shell.cp(path.join(BUILD_DIR, js_path, js_basename), path.join(project_path, "www"));
+
+    //copy node modules to cordova build directory
+    wrench.mkdirSyncRecursive(nodeModulesDest, 0777);
+    wrench.copyDirSyncRecursive(MODULES_PROJECT_DIR, nodeModulesDest);
+
+    //copy framework bootstrap
+    TARGETS.forEach(function (target) {
+        var chromeDir = path.join(native_dir, target, "chrome"),
+            frameworkLibDir = path.join(chromeDir, "lib"),
+            defaultConfig;
+
+        wrench.mkdirSyncRecursive(frameworkLibDir);
+        wrench.copyDirSyncRecursive(BOOTSTRAP_PROJECT_DIR, chromeDir);
+        wrench.copyDirSyncRecursive(FRAMEWORK_LIB_PROJECT_DIR, frameworkLibDir);
+
+        //apply 'native' Cordova version
+        defaultConfig = fs.readFileSync(path.join(frameworkLibDir,  "config", "default.js"));
+        defaultConfig = defaultConfig.toString().replace("CORDOVA-VERSION", version);
+        fs.writeFileSync(path.join(frameworkLibDir, "config", "default.js"), defaultConfig, "utf-8");
+
+    });
+
+    // save release
+    wrench.mkdirSyncRecursive(update_dir, 0777);
+    wrench.copyDirSyncRecursive(BUILD_DIR, update_dir);
+}
+
+function updateProject() {
+    var configXMLPath = path.resolve(path.join(project_path, "www", "config.xml")),
+        xmlString;
+
+    if (typeof app_id !== "undefined") {
+        xmlString = fs.readFileSync(configXMLPath, "utf-8");
+        fs.writeFileSync(configXMLPath, xmlString.replace("default.app.id", app_id).replace("default.app.name", app_name), "utf-8");
+    }
+}
+
+function help() {
+    console.log("\nUsage: create <project-path> [id [name [template_path]]] \n");
+    console.log("Options: \n");
+    console.log("   -h, --help      output usage information \n");
+}
+
+if ( process.argv[2] === "-h" || process.argv[2] === "--help" ) {
+    help();
+} else {
+    try {
+        validate();
+        clean();
+        copyJavascript();
+        copyFilesToProject();
+        updateProject();
+        clean();
+        exit();
+    } catch (ex) {
+        console.log("Project creation failed!");
+        console.error(os.EOL + ex);
+        exit(ERROR_VALUE);
+    }
+}

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/lib/target.js
----------------------------------------------------------------------
diff --git a/bin/lib/target.js b/bin/lib/target.js
new file mode 100644
index 0000000..0aac883
--- /dev/null
+++ b/bin/lib/target.js
@@ -0,0 +1,154 @@
+#!/usr/bin/env node
+/*
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+var path = require('path'),
+    exit = require('exit'),
+    fs = require('fs'),
+    config = require('./config'),
+    commander = require('commander'),
+    properties = config.getProperties(),
+    ERROR_VALUE = 2,
+    NOTIMPLEMENTED_VALUE = 1,
+    command,
+    targetName,
+    ip,
+    type,
+    password,
+    pin,
+    pinRegex = new RegExp("[0-9A-Fa-f]{8}");
+
+function isValidType(type) {
+    var result = true;
+
+    if (typeof type !== 'string') {
+        console.log("target type is required");
+        console.log(commander.helpInformation());
+        exit(ERROR_VALUE);
+    }
+    else if (!(type === 'device' || type === 'emulator')) {
+        result = false;
+    }
+    return result;
+}
+
+function isValidPin(pin) {
+    var result = true;
+    if (typeof pin !== 'undefined' && !pinRegex.test(pin)) {
+        result = false;
+    }
+    return result;
+}
+
+commander
+    .usage('[command] [params]')
+    .option('-p, --password <password>', 'Specifies password for this target')
+    .option('--pin <devicepin>', 'Specifies PIN for this device')
+    .option('-t, --type <device | simulator>', 'Specifies the target type');
+
+commander
+    .on('--help', function () {
+        console.log('   Synopsis:');
+        console.log('   $ target');
+        console.log('   $ target add <name> <host> [-t | --type <device | simulator>] [-p | --password <password>] [--pin <devicepin>]');
+        console.log('   $ target remove <name>');
+        console.log(' ');
+    });
+
+commander
+    .command('add')
+    .description("Add specified target")
+    .action(function () {
+        if (commander.args.length === 1) {
+            console.log("Target details not specified");
+            console.log(commander.helpInformation());
+            exit(ERROR_VALUE);
+        }
+        targetName = commander.args[0];
+        ip = commander.args[1];
+        type = commander.type ? commander.type : "device";
+        if (type === "simulator") {
+            type = "emulator";
+        }
+        if (commander.password && typeof commander.password === 'string') {
+            password = commander.password;
+        }
+        if (commander.pin && typeof commander.pin === 'string') {
+            pin = commander.pin;
+        }
+        if (!isValidType(type)) {
+            console.log("Invalid target type: " + type);
+            console.log(commander.helpInformation());
+            exit(ERROR_VALUE);
+        }
+        if (typeof ip !== 'string') {
+            console.log("host is required");
+            console.log(commander.helpInformation());
+            exit(ERROR_VALUE);
+        }
+        if (!isValidPin(pin)) {
+            console.log("Invalid PIN: " + pin);
+            console.log(commander.helpInformation());
+            exit(ERROR_VALUE);
+        }
+        if (properties.targets.hasOwnProperty(targetName)) {
+            console.log("Overwriting target: " + targetName);
+        }
+        targetName = targetName.replace(/ /g, "-");
+        properties.targets[targetName] = {"ip": ip, "type": type, "password": password, "pin": pin};
+    });
+
+commander
+    .command('remove')
+    .description("Remove specified target")
+    .action(function () {
+        if (commander.args.length === 1) {
+            console.log('No target specified');
+            console.log(commander.helpInformation());
+            exit(ERROR_VALUE);
+        }
+        targetName = commander.args[0];
+        if (!properties.targets.hasOwnProperty(targetName)) {
+            console.log("Target: '" + targetName + "' not found");
+            console.log(commander.helpInformation());
+            exit(ERROR_VALUE);
+        }
+        delete properties.targets[targetName];
+    });
+
+commander
+    .command('*')
+    .action(function () {
+        console.log('Unrecognized command');
+        console.log(commander.helpInformation());
+        exit(NOTIMPLEMENTED_VALUE);
+    });
+
+
+try {
+    commander.parse(process.argv);
+
+    if (commander.args.length === 0) {
+        Object.keys(properties.targets).forEach(function (target) {
+                console.log(target);
+            }
+        );
+        exit();
+    }
+
+    config.writeProperties(properties);
+} catch (e) {
+    console.log(e);
+    exit();
+}

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/lib/update.js
----------------------------------------------------------------------
diff --git a/bin/lib/update.js b/bin/lib/update.js
new file mode 100644
index 0000000..6a1b4f7
--- /dev/null
+++ b/bin/lib/update.js
@@ -0,0 +1,88 @@
+#!/usr/bin/env node
+
+/*
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+*/
+
+var shell = require('shelljs'),
+    exit = require('exit'),
+    path  = require('path'),
+    fs    = require('fs'),
+    ROOT    = path.join(__dirname, '..', '..');
+
+function setShellFatal(value, func) {
+    var oldVal = shell.config.fatal;
+    shell.config.fatal = value;
+    func();
+    shell.config.fatal = oldVal;
+}
+
+
+function updateNativeDir(projectpath) {
+    shell.cp('-rf', path.join(ROOT, 'bin', 'templates', 'project', 'native'), path.join(projectpath));
+}
+
+function updateCordovaJS(projectpath, version) {
+    var jspath = path.join(projectpath, 'lib', 'cordova.' + version, 'javascript');
+    shell.mkdir('-p', jspath); // remake lib dir tree with updated version
+    shell.cp('-f', path.join(ROOT, 'javascript', 'cordova.blackberry10.js'), path.join(jspath, 'cordova.js')); // copy new js
+    shell.cp('-f', path.join(ROOT, 'javascript', 'cordova.blackberry10.js'), path.join(projectpath, 'www', 'cordova.js'));
+}
+
+function updateCordovaTools(projectpath) {
+    // update cordova scripts from template
+    shell.cp('-rf', path.join(ROOT, 'bin', 'templates', 'project', 'cordova'), path.join(projectpath));
+    // update repo level scripts
+    updateTargetTool(projectpath);
+    updateInitTool(projectpath); 
+}
+
+function updateTargetTool(projectpath) {
+    shell.cp('-f', path.join(ROOT, 'bin', 'target'), path.join(projectpath, 'cordova'));
+    shell.cp('-f', path.join(ROOT, 'bin', 'target.bat'), path.join(projectpath, 'cordova'));
+    shell.cp('-f', path.join(ROOT, 'bin', 'lib', 'target.js'), path.join(projectpath, 'cordova', 'lib'));
+}
+
+function updateInitTool(projectpath) {
+    shell.cp('-f', path.join(ROOT, 'bin', 'init.bat'), path.join(projectpath, 'cordova'));
+    shell.cp('-f', path.join(ROOT, 'bin', 'init'), path.join(projectpath, 'cordova'));
+}
+
+exports.updateProject = function (projectpath) {
+    var version = fs.readFileSync(path.join(ROOT, 'VERSION'), 'utf-8').trim();
+    setShellFatal(true, function () {
+        shell.rm('-rf', path.join(projectpath, 'lib')); //remove old lib tree
+        updateCordovaJS(projectpath, version);
+        updateCordovaTools(projectpath);
+        updateNativeDir(projectpath);
+        fs.writeFileSync(path.join(projectpath, 'VERSION'), version + "\n", 'utf-8');
+        console.log('BlackBerry10 project is now at version ' + version);
+    });
+};
+
+if (require.main === module) {
+    (function () {
+        var args = process.argv;
+        if (args.length < 3 || (args[2] === '--help' || args[2] === '-h')) {
+            console.log('Usage: ' + path.relative(process.cwd(), path.join(__dirname, '..', 'update')) + ' <path_to_project>');
+            exit(1);
+        } else {
+            exports.updateProject(args[2]);
+        }
+    })();
+}

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/target
----------------------------------------------------------------------
diff --git a/bin/target b/bin/target
new file mode 100755
index 0000000..7ae84ab
--- /dev/null
+++ b/bin/target
@@ -0,0 +1,22 @@
+#!/usr/bin/env bash
+<<COMMENT
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+COMMENT
+BIN_DIR=$(dirname "$0")
+source "$BIN_DIR/init"
+"$CORDOVA_NODE/node" "$BIN_DIR/lib/target" "$@"

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/target.bat
----------------------------------------------------------------------
diff --git a/bin/target.bat b/bin/target.bat
new file mode 100644
index 0000000..b760775
--- /dev/null
+++ b/bin/target.bat
@@ -0,0 +1,23 @@
+@ECHO OFF
+goto comment
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+:comment
+call "%~dp0init"
+if ERRORLEVEL 1 exit /B 1
+
+"%CORDOVA_NODE%\node.exe" "%~dp0\lib\target" %*

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/templates/project/cordova/bb10-ndk-version
----------------------------------------------------------------------
diff --git a/bin/templates/project/cordova/bb10-ndk-version b/bin/templates/project/cordova/bb10-ndk-version
new file mode 100755
index 0000000..3964910
--- /dev/null
+++ b/bin/templates/project/cordova/bb10-ndk-version
@@ -0,0 +1,25 @@
+#!/bin/bash
+<<COMMENT
+    Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+COMMENT
+CORDOVA_DIR=$(dirname "$0")
+source "$CORDOVA_DIR/init"
+
+# Prints bb10 ndk version number
+"$CORDOVA_NODE/node" "$CORDOVA_DIR/lib/bb10-ndk-version" "$@"
+

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/templates/project/cordova/bb10-ndk-version.bat
----------------------------------------------------------------------
diff --git a/bin/templates/project/cordova/bb10-ndk-version.bat b/bin/templates/project/cordova/bb10-ndk-version.bat
new file mode 100644
index 0000000..00d113c
--- /dev/null
+++ b/bin/templates/project/cordova/bb10-ndk-version.bat
@@ -0,0 +1,21 @@
+@ECHO OFF
+goto comment
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+:comment
+call "%~dp0init"
+"%CORDOVA_NODE%\node.exe" "%~dp0\lib\bb10-ndk-version" %*

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/templates/project/cordova/build
----------------------------------------------------------------------
diff --git a/bin/templates/project/cordova/build b/bin/templates/project/cordova/build
new file mode 100755
index 0000000..7a39b18
--- /dev/null
+++ b/bin/templates/project/cordova/build
@@ -0,0 +1,25 @@
+#!/usr/bin/env bash
+<<COMMENT
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+COMMENT
+CORDOVA_DIR=$(dirname "$0")
+source "$CORDOVA_DIR/init"
+
+#package app
+"$CORDOVA_NODE/node" "$CORDOVA_DIR/lib/build" "$@"
+

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/templates/project/cordova/build.bat
----------------------------------------------------------------------
diff --git a/bin/templates/project/cordova/build.bat b/bin/templates/project/cordova/build.bat
new file mode 100644
index 0000000..e20e8c5
--- /dev/null
+++ b/bin/templates/project/cordova/build.bat
@@ -0,0 +1,23 @@
+@ECHO OFF
+goto comment
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+:comment
+call "%~dp0init"
+if ERRORLEVEL 1 exit /B 1
+
+"%CORDOVA_NODE%\node.exe" "%~dp0\lib\build" %*

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/templates/project/cordova/clean
----------------------------------------------------------------------
diff --git a/bin/templates/project/cordova/clean b/bin/templates/project/cordova/clean
new file mode 100755
index 0000000..02ecd13
--- /dev/null
+++ b/bin/templates/project/cordova/clean
@@ -0,0 +1,23 @@
+#!/usr/bin/env bash
+<<COMMENT
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+COMMENT
+CORDOVA_DIR=$(dirname "$0")
+source "$CORDOVA_DIR/init"
+
+"$CORDOVA_NODE/node" "$CORDOVA_DIR/lib/clean"

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/templates/project/cordova/clean.bat
----------------------------------------------------------------------
diff --git a/bin/templates/project/cordova/clean.bat b/bin/templates/project/cordova/clean.bat
new file mode 100644
index 0000000..30129a6
--- /dev/null
+++ b/bin/templates/project/cordova/clean.bat
@@ -0,0 +1,23 @@
+@ECHO OFF
+goto comment
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+:comment
+call "%~dp0init"
+if ERRORLEVEL 1 exit /B 1
+
+"%CORDOVA_NODE%\node.exe" "%~dp0\lib\clean" %*

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/templates/project/cordova/default-icon.png
----------------------------------------------------------------------
diff --git a/bin/templates/project/cordova/default-icon.png b/bin/templates/project/cordova/default-icon.png
new file mode 100644
index 0000000..f86a27a
Binary files /dev/null and b/bin/templates/project/cordova/default-icon.png differ

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/templates/project/cordova/defaults.xml
----------------------------------------------------------------------
diff --git a/bin/templates/project/cordova/defaults.xml b/bin/templates/project/cordova/defaults.xml
new file mode 100644
index 0000000..0ca31c9
--- /dev/null
+++ b/bin/templates/project/cordova/defaults.xml
@@ -0,0 +1,29 @@
+
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+-->
+<!--
+  Widget Configuration Reference:
+    https://developer.blackberry.com/html5/documentation/v2_1/config_doc_elements.html
+-->
+<widget xmlns="http://www.w3.org/ns/widgets"
+        xmlns:rim="http://www.blackberry.com/ns/widgets"
+        xmlns:cdv="http://cordova.apache.org/ns/1.0">
+  <content src="index.html"/>
+</widget>

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/templates/project/cordova/install-device
----------------------------------------------------------------------
diff --git a/bin/templates/project/cordova/install-device b/bin/templates/project/cordova/install-device
new file mode 100755
index 0000000..efc79e5
--- /dev/null
+++ b/bin/templates/project/cordova/install-device
@@ -0,0 +1,23 @@
+#!/usr/bin/env bash
+<<COMMENT
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+COMMENT
+CORDOVA_DIR=$(dirname "$0")
+source "$CORDOVA_DIR/init"
+
+"$CORDOVA_NODE/node" "$CORDOVA_DIR/lib/install-device" "$@"

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/templates/project/cordova/install-device.bat
----------------------------------------------------------------------
diff --git a/bin/templates/project/cordova/install-device.bat b/bin/templates/project/cordova/install-device.bat
new file mode 100644
index 0000000..63c9fec
--- /dev/null
+++ b/bin/templates/project/cordova/install-device.bat
@@ -0,0 +1,23 @@
+@ECHO OFF
+goto comment
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+:comment
+call "%~dp0init"
+if ERRORLEVEL 1 exit /B 1
+
+"%CORDOVA_NODE%\node.exe" "%~dp0\lib\install-device" %*

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/templates/project/cordova/install-emulator
----------------------------------------------------------------------
diff --git a/bin/templates/project/cordova/install-emulator b/bin/templates/project/cordova/install-emulator
new file mode 100644
index 0000000..6187672
--- /dev/null
+++ b/bin/templates/project/cordova/install-emulator
@@ -0,0 +1,23 @@
+#!/usr/bin/env bash
+<<COMMENT
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+COMMENT
+CORDOVA_DIR=$(dirname "$0")
+source "$CORDOVA_DIR/init"
+
+"$CORDOVA_NODE/node" "$CORDOVA_DIR/lib/install-emulator" "$@"

http://git-wip-us.apache.org/repos/asf/cordova-blackberry/blob/a6733a83/bin/templates/project/cordova/install-emulator.bat
----------------------------------------------------------------------
diff --git a/bin/templates/project/cordova/install-emulator.bat b/bin/templates/project/cordova/install-emulator.bat
new file mode 100644
index 0000000..2521da6
--- /dev/null
+++ b/bin/templates/project/cordova/install-emulator.bat
@@ -0,0 +1,23 @@
+@ECHO OFF
+goto comment
+       Licensed to the Apache Software Foundation (ASF) under one
+       or more contributor license agreements.  See the NOTICE file
+       distributed with this work for additional information
+       regarding copyright ownership.  The ASF licenses this file
+       to you under the Apache License, Version 2.0 (the
+       "License"); you may not use this file except in compliance
+       with the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+       Unless required by applicable law or agreed to in writing,
+       software distributed under the License is distributed on an
+       "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+       KIND, either express or implied.  See the License for the
+       specific language governing permissions and limitations
+       under the License.
+:comment
+call "%~dp0init"
+if ERRORLEVEL 1 exit /B 1
+
+"%CORDOVA_NODE%\node.exe" "%~dp0\lib\install-emulator" %*