cordova-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Carlos Santana <csantan...@gmail.com>
Subject Re: Cordova workflows based on build systems / task runners
Date Thu, 14 Aug 2014 15:08:05 GMT
My grunt-cordovacli [1]  plugin works in a similar way, just using
cordova-cli PAIs which I a year ago there was no cordova-lib APIs or gulpjs

I can create a slushjs [2] using cordoval-lib just for fun :-), but I'm
missing the point of this thread? Is the point to evaluate what could be a
good set of plublic APIs for cordova-lib?

[1] : https://www.npmjs.org/package/grunt-cordovacli
[2] : https://www.npmjs.org/package/slush




On Thu, Aug 14, 2014 at 10:07 AM, Andrew Grieve <agrieve@chromium.org>
wrote:

> Certainly shows some rough spots of the CLI interface e.g.:
> - Need to add plugins before platforms
> - Need to chdir() before calling functions
>
> And yes - love that this makes cordova fit in more nicely with other parts
> of an app's build system.
>
> One thing I wondered when reading it is if Cordova should have an api for a
> bare-bones "prepare" step. E.g. - don't copy from root www -> platform ww,
> but just copy in cordova.js & plugin files, assume that the user will take
> care of putting everything else into the platform www/
>
>
>
>
> On Wed, Aug 13, 2014 at 9:31 PM, Brian LeRoux <b@brian.io> wrote:
>
> > "Topic for a PGDay talk!" <--yes pls submit
> >
> >
> > On Wed, Aug 13, 2014 at 5:31 PM, Michal Mocny <mmocny@chromium.org>
> wrote:
> >
> > > :D So cool!
> > >
> > > If I understand correct, this is a combination of:
> > > (a) using the cordova-lib node interface directly
> > > (b) iterating node_modules and inferring the set of platforms from that
> > > (c) plugins are listed explicitly since we don't use real npm
> > > (d) treating www/ as the output of an initial gulp stream
> > >
> > > There are some hardcoded paths, but I guess thats just your sample
> > > gulpfile.  Probably we would either publish a gulp plugin that takes in
> > > args, or just leave this repo as boilerplate and let users tweak
> > > accordingly?
> > >
> > > I've not played with Carlos' grunt based workflow, but wonder how
> similar
> > > that approach is.
> > >
> > > I think this could be a sweet workflow and find it encouraging to see
> how
> > > it could be thrown together.  Topic for a PGDay talk!? ;)
> > >
> > > -Michal
> > >
> > >
> > > On Wed, Aug 13, 2014 at 6:18 PM, Mark Koudritsky <kamrik@google.com>
> > > wrote:
> > >
> > > > Hi all,
> > > >
> > > > Inspired by several recent conversations on this mailing list I've
> been
> > > > thinking about a Cordova workflow based on some build system. As an
> > > > experiment I've put together this  app using Gulp and cordova-lib:
> > > >
> > > > https://github.com/kamrik/CordovaGulpTemplate
> > > >
> > > > To try it out
> > > > git clone https://github.com/kamrik/CordovaGulpTemplate.git
> > > > cd CordovaGulpTemplate
> > > > npm install
> > > > npm install gulp -g  # if you don't yet have gulp installed.
> > > > gulp recreate
> > > > gulp build|emulate|run
> > > >
> > > > The important files are:
> > > >   * package.json
> > > >   * gulpfile.js
> > > >   * src/config.xml (the cordova config.xml)
> > > >   * src/www/  (copied as is from the default cordova www template)
> > > > The whole cordova project dir is treated as a build artifact. It
> lives
> > > > under ./build (ignored by git and nuked by "gulp clean").
> > > >
> > > >
> > > > Some benefits of this workflow:
> > > >  - Cordova can blend in as just another tool in the app workflow
> > > alongside
> > > > stuff like Sass, template and CoffeeScript/Dart preprocessing etc.
> > > >  - Can use any folder structure under ./src, the cordova project
> > > structure
> > > > is created under ./build by linking or copying from ./src (or by
> > > filtering
> > > > via transpilers).
> > > >  - Platforms are listed as app dependencies in package.json. As a
> > result,
> > > > npm downloads them and platform version preferences are set just like
> > > with
> > > > any npm deps. (plugins are not treated this way, see comments in
> > > gulpfile).
> > > >  - No need to programmatically edit config.xml to store platform
> list.
> > > >  - As a bonus, people disliking XML can make a simple Gulp plugin
> that
> > > > would generate Cordova's config.xml from a more human friendly
> > > > json/yaml/ini/whatever file ;)
> > > >
> > >
> >
>



-- 
Carlos Santana
<csantana23@gmail.com>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message