From dev-return-23539-apmail-couchdb-dev-archive=couchdb.apache.org@couchdb.apache.org Thu Oct 25 17:25:22 2012 Return-Path: X-Original-To: apmail-couchdb-dev-archive@www.apache.org Delivered-To: apmail-couchdb-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 18249DF4C for ; Thu, 25 Oct 2012 17:25:22 +0000 (UTC) Received: (qmail 74448 invoked by uid 500); 25 Oct 2012 17:25:21 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 74386 invoked by uid 500); 25 Oct 2012 17:25:21 -0000 Mailing-List: contact dev-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@couchdb.apache.org Delivered-To: mailing list dev@couchdb.apache.org Received: (qmail 74378 invoked by uid 99); 25 Oct 2012 17:25:21 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 25 Oct 2012 17:25:21 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of mainerror@gmail.com designates 209.85.215.52 as permitted sender) Received: from [209.85.215.52] (HELO mail-la0-f52.google.com) (209.85.215.52) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 25 Oct 2012 17:25:14 +0000 Received: by mail-la0-f52.google.com with SMTP id s15so1684321lag.11 for ; Thu, 25 Oct 2012 10:24:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=LtyV8nyLYeFTWU+bdNTHd535UajbaBLhAdxwbPY51Qk=; b=ohY6MdeklELP1Lt9W1E6seH7AEjRg4m7rJy0hHf9GI/+BhFYJf+/WEw2B+UXNDTMT2 V4nVTMSRfreAzEr+YgUwFcncWqUCbwpaOMMV9sKm6yWsPQjzr/5Dy12PyYp8sTdVg0IK Jsu7IiwTY4ASFfbLUQ7ghregNOyiNI1ufA8A3ZROFEkg8Z710WRZhHN/XXPBAXttXfcF E31tnSBErFJPjMVJIXKQCWe7csfES1X0LbPWrLLdDWMSvItt2jAsqI2I7MViaHYc+gIQ theFz9zVDFSxh3Pphybx7VUGa6Q32+uETdlaefofDGSq6OPMitTlbvGM6NaNOYOiN41G mMTA== MIME-Version: 1.0 Received: by 10.152.146.101 with SMTP id tb5mr17862122lab.44.1351185893977; Thu, 25 Oct 2012 10:24:53 -0700 (PDT) Received: by 10.114.29.234 with HTTP; Thu, 25 Oct 2012 10:24:53 -0700 (PDT) In-Reply-To: References: <054053281C1E41E9955761009CA159FF@cloudant.com> Date: Thu, 25 Oct 2012 19:24:53 +0200 Message-ID: Subject: Re: Futon.Next From: Octavian Damiean To: dev@couchdb.apache.org Cc: Caolan McMahon Content-Type: multipart/alternative; boundary=e89a8f2348b33c705b04cce57b2b X-Virus-Checked: Checked by ClamAV on apache.org --e89a8f2348b33c705b04cce57b2b Content-Type: text/plain; charset=UTF-8 I think there is quite a bit of confusion about Node.js and Less usage apparently. I'm going to try to clear this up. The less stylesheets will be compiled to CSS at build-time and will be served as plain old CSS directly from CouchDB. Node.js would not be a dependency to run CouchDB but only to build/hack on it. Node.js would solve quite a few build problems in one go. It can be used to compile our Less stylesheets to CSS, minify CSS and JS if necessary and then upload it to your local (or remote) CouchDB instance. On Thu, Oct 25, 2012 at 7:14 PM, Ryan Ramage wrote: > >> 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: > > https://github.com/ryanramage/jam-garden-starter > > 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. > --e89a8f2348b33c705b04cce57b2b--