Hey all:

I submitted a pull request for an enhancement of the addition of a merges 
folder/concept into the cli build process.

https://github.com/apache/cordova-cli/pull/3

The concept of merges is pretty simple, to support a common core web base 
across platforms, but allow for deploying platform specific www content to 
specific platforms.  The addition to the CLI tool adds a new folder "merges" to 
the root level.  Upon running "cordova platforms add|remove platform" a new 
folder is created under the "merges" folder (ie: merges/ios , merges/android 
etc).  Upon running "cordova buid" any content added to this folder will be 
deployed to the associated www folder in the platforms.  This carries for 
either new content being added, or more importantly overrides existing content 
from the www folder.  For a very simple example imagine you have a css file 
named css/chrome.css in the www folder, where you could have .backButton { 
display:block;} , but then under merges/android/css/chrome.css you could have 
.backButton{display:none;}, this is a very simplistic use but it illustrates 
the concept. This additional workflow to the build system in the cli enables 
some great processes for building a nice clean cordova app for example.


 *   Allows for keeping code clean and limits the need for platform specific js 
logic per platform
 *   Enables a process of mocking in custom plugins for in browser dev (mocks 
under www real implementations under merges) , and not risking this code 
filtering into production/device code
 *   Allows for creating platform specific assets such as css / font / images/ 
videos etc that only gets merged into the specific desired platform
 *   Allows for accepting that each platform is unique and sometimes need 
specific logic and or shims,  and always deserves the platform specific love, 
and the build process should support doing this cleanly

Anywho    ….. Would love to see this integrated in.

Thanks

mw

Reply via email to