What exactly is the Ionic v3 CLI --cordova option

Can some one please clarify what the ionic start myApp tabs --cordova option actually means? The --help simply saays --cordova: Include cordova integration. What does this do?

Other than this description I can’t find any other information on it. Technically, Ionic is built on top of cordova right? So what does the --cordova integration mean if ionic is already laying on top of cordova.

I am upgrading my v1 project to the latest and greatest and have all kinds of things to catch up on…but this one is really throwing me. All of my plugins from v1 are cordova-plugin-<pluginName> - and I know some of the plugins I use are now integrated into cordova8.0 and ionic v3 has its own versions - so I will be using less 3rd party plugins…but still…the --cordova option is not making sense to me.

Thanks.

in fact, I created two test projects, one with the --cordova option and one without…yet during the install of both test projects cordova IS integrated…so whats the purpose of the command?

In both cases,

> ionic integrations enable cordova --quiet
√ Downloading integration cordova - done!
√ Copying integrations files to project - done!
[OK] Added cordova integration!

Without --cordova option

:\Users\rolin\dev>ionic start myApp tabs --no-link
√ Creating directory .\myApp - done!
√ Downloading and extracting tabs starter - done!

? Would you like to integrate your new app with Cordova to target native iOS and Android? Yes
√ Personalizing ionic.config.json and package.json - done!
> ionic integrations enable cordova --quiet
√ Downloading integration cordova - done!
√ Copying integrations files to project - done!
[OK] Added cordova integration!

Installing dependencies may take several minutes.

  *   IONIC  DEVAPP  *

 Speed up development with the Ionic DevApp, our fast, on-device testing mobile app

  -     Test on iOS and Android without Native SDKs
  -     LiveReload for instant style and JS updates

 ️-->    Install DevApp: https://bit.ly/ionic-dev-app    <--

> npm i
√ Running command - done!
> git init
> git add -A
> git commit -m "Initial commit" --no-gpg-sign

Next Steps:
* Go to your newly created project: cd .\myApp
* Get Ionic DevApp for easy device testing: https://bit.ly/ionic-dev-app

With --cordova option:

c:\Users\rolin\dev>ionic start myAppA tabs --cordova --no-link
√ Creating directory .\myAppA - done!
√ Downloading and extracting tabs starter - done!
√ Personalizing ionic.config.json and package.json - done!
> ionic integrations enable cordova --quiet
√ Downloading integration cordova - done!
√ Copying integrations files to project - done!
[OK] Added cordova integration!

Installing dependencies may take several minutes.

  *   IONIC  DEVAPP  *

 Speed up development with the Ionic DevApp, our fast, on-device testing mobile app

  -     Test on iOS and Android without Native SDKs
  -     LiveReload for instant style and JS updates

 ️-->    Install DevApp: https://bit.ly/ionic-dev-app    <--

> npm i
√ Running command - done!
> git init
> git add -A
> git commit -m "Initial commit" --no-gpg-sign

Next Steps:
* Go to your newly created project: cd .\myAppA
* Get Ionic DevApp for easy device testing: https://bit.ly/ionic-dev-app

hmmmm, upon further inspection it looks like the --cordova option by-passes automatically adding both iOS and Android.

without the --cordova I get this question during the install process:
? Would you like to integrate your new app with Cordova to target native iOS and Android? Yes

But what does target mean? In either case, I still have to add ionic cordova platform add android@latest - so what additionally is NOT using the --cordova option doing?

With the option the Cordova integration is activated by default, otherwise you have to reply with Yes to trigger it. So simple.