couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ryan Ramage <>
Subject Re: Futon.Next
Date Thu, 25 Oct 2012 17:14:14 GMT
>> I think I need to explain that bit. If we want to use Bootstrap and less.js we need
a build tool that will compile the less files into css and then upload the couchapp into couchdb.
Grunt.js is a good fit  but it is an extra dependancy as it requires node.js. Maybe Erica
could do that instead. At this stage these are pretty minor issues that will be easy to sort
out later.
> Also the less-to-CSS could be done at release time instead of
> run-time, so only the people who hack on Futon will have to install
> node. That would be fine with me, of course.

I have been going back and forth on this topic in my head for a while.
My thoughts.

- I love having the power of a build system like grunt and tools like
less, and precompilers etc. It's joy to a webdevs life.
- building couchdb from source is already a massive endeavor for
requirements. We have to watch we dont make it more difficult. eg, now
you need node, etc
- Erica (might or might not) be bundled with couchdb, but I think it
is the right choice for the final push to couchdb.
- I dont think erica should have any extra tooling in it (ie less
compiling), at most it will support build step hooks.

With those points in mind I have been working on a pretty minimal
erica build. It can be seen here:

Here are the key points to it:

- anyone can push with just erica on their system.
- a production run can be called with the Make command. This requires
jam (yes, a node module), which only alters one file, and nothing
needs to change.
- We would make a branch/tag that would have the production 'one file'
checked in.
- it uses a package manager (jamjs) for js dependencies which is
_supported_ by 2 people in the couchdb community (caolan and myself)
- it is following an 'attachment first' style that I am adding into
erica. This is much more palatable for webdevs.
* dont worry about the pouchdb stuff in there I was just playing, we
can use any 'driver' we choose.

View raw message