Brunch is much older than webpack, one of the first javascript build 
systems.  Instead of specifying tasks everything is built via plugins, 
entirely concurrently and keeping things in memory as it is passed from 
thing to thing as it can, which makes it blazing fast (at work we have a 
few *thousand* javascript files totaling a few megs, it compiles it all in 
<4s flat.  Compared to one of the Elm apps, which elm takes over 40s to 
compile, which the elm source totals 290KB.  So Brunch can do all the elm 
and javascript simultaneously before bringing them all together, optimizing 
them, minifying, closure-compiling, etc..., whenever elm finishes that is. 
 ^.^

But yep, there are plugins for about anything for brunch, and dead simple 
to make your own as I've done.  You define a configuration for the plugins 
you use, there is no imperative declaration like grunt or so, just 
configuration, which makes it very simple.  I highly recommend brunch.

Brunch is also the distributed javascript asset build system for the 
Phoenix web server library as well, which is the fastest growing server out 
right now, of which they chose brunch for the reason of its fast 
compilation time so it can re-serve pages on the fly as files are edited.

Brunch plugins include not just compiling plugins but also has a web server 
plugin, where you can see file changes on the fly, a diff pusher, which 
sends updates to the files (css/javascript/whatever) to the embedded 
webserver plugin without needing a page reload, etc...


On Friday, October 28, 2016 at 9:24:13 AM UTC-6, Colin Yates wrote:
>
> Thanks OvermindDL1 - I did see a blog post about brunch but I kinda 
> skimmed over it as it didn't look that mainstream. Thanks again. 
>
> On 28 October 2016 at 16:21, OvermindDL1 <overm...@gmail.com <javascript:>> 
> wrote: 
> > I use brunch for all of the above except `executes any test`, of which I 
> > just use `npm test` for that.  Simple, significantly faster than webpack 
> > (though both will be bound by elm's slow compiling speed if that is all 
> it 
> > is really handling). 
> > 
> > 
> > On Friday, October 28, 2016 at 7:19:59 AM UTC-6, Colin Yates wrote: 
> >> 
> >> Hi, 
> >> 
> >> I have to get up to speed super-quick with Elm and so I want to stay as 
> >> mainstream as possible (yeah, I know it isn't 1.0 yet :-)). I am stuck 
> >> trying to decide on a build tool that: 
> >> 
> >>  - handles CSS (generating and compressing) 
> >>  - hot reload code in the browser so no refreshing 
> >>  - executes any tests 
> >>  - concatenates and optimises the JS 
> >> 
> >> Basically, my question is "leiningen is to Clojure as _______ is to 
> Elm" 
> >> :-). 
> >> 
> >> If the community had one voice, what would they fill in the blank? 
> >> 
> >> Thanks all. 
> > 
> > -- 
> > You received this message because you are subscribed to a topic in the 
> > Google Groups "Elm Discuss" group. 
> > To unsubscribe from this topic, visit 
> > https://groups.google.com/d/topic/elm-discuss/7hEp70pIh98/unsubscribe. 
> > To unsubscribe from this group and all its topics, send an email to 
> > elm-discuss...@googlegroups.com <javascript:>. 
> > For more options, visit https://groups.google.com/d/optout. 
>

-- 
You received this message because you are subscribed to the Google Groups "Elm 
Discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to elm-discuss+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to