Apache Cordova hello world

Clone this repo:
  1. 1316332 chore(index.html): add charset, prevent scaling, use default attributes (#58) by Mosab A · 5 days ago master
  2. bff5ef2 Merge pull request #57 from mosabab/patch-1 by Darryl Pogue · 5 days ago
  3. 24c6eb3 Update index.css, fixes duplicated env right by Mosab A · 5 days ago
  4. 45bdc7c Simplify demo app JavaScript (#55) by Raphael von der Grün · 2 weeks ago
  5. 5e59246 fix: move default plugin to package.json (#56) by Raphael von der Grün · 2 weeks ago

Apache Cordova Hello World Application

A simple Hello World application that serves two purposes:

  • It is used as the default app template when creating new projects
  • It is a reference for building and publishing custom Cordova Templates

Structure of your template

template_package
├── package.json (for your template package to be published on npm)
├── index.js
└── template_src (contains template files)
    ├── package.json
    ├── config.xml
    └── (files and folders that make up the template)

Outside of template_src

All files outside of template_src are used to define parameters about the template. These files are not copied over at creation, so feel free to add a README or any other files outside of template_src.

index.js

index.js points to where the template exists. You'll see that index.js usually looks like:

var path = require('path');

module.exports = {
    dirname : path.join(__dirname, 'template_src')
};

package.json

This package.json holds information about the template itself like its name, version etc. All templates should contain the keyword "cordova:template" so that the template is searchable on npm. For example:

{
    "name": "cordova-example-template",
    "version": "1.0.0",
    "...": "...",
    "keywords": [
        "cordova:template"
    ]
}

Inside of template_src

All files inside of template_src compose the template from which a user would desire in order to create their project. Everything in this folder is copied over to the created project.

The package.json in template_src should be filled with information that describes the project that would be created from the template.

If you want to include .gitignore files in your template, you have to name them gitignore (without a leading dot) instead. They will be renamed to .gitignore upon template expansion.