My first thought is: don't bother compiling the code, just run it
"live" from source (and maybe provide a way to easily reload the
templates (such as a URL parameter).

What I've done in my FW/1 framework (convention-based MVC, built on
Ring and Enlive) is to have a mode that auto-reloads templates on
every request (a development mode) or you can just specify a URL
parameter to force the templates to be reloaded.

If you're interested in looking at FW/1 for Clojure (it's a port of a
seasoned and very popular CFML framework that I originally created
back in 2009), the repo is: https://github.com/seancorfield/fw1-clj

There's a FW/1 Leiningen template so it should be as simple as:
* lein new fw1 myapp
* cd myapp
* lein run

Then just edit controllers (and add a separate model if you want),
edit your views, and add ?reload=secret to the URL to force a reload.

For more background, the original CFML version is here:
https://github.com/seancorfield/fw1 with some overview information
here: http://fw1.riaforge.org (including mailing list link).

Sean

On Thu, Jan 10, 2013 at 3:28 PM, larry google groups
<lawrencecloj...@gmail.com> wrote:
>
> So, I am working on a web app that is buillt with Clojure/Ring/Jetty
> and, importantly, Enlive. My directory structure is like this:
>
> /resources
>     /public
>         /css
>         /js
>         /img
>     /templates
>
> /src
>     /discovery
>         core.clj
>
>
> The great thing about Enlive is that the templates are pure HTML. This
> makes it easier for graphic designers and frontenders to work with
> them directly. I am working with a designer and frontend developer,
> who  have absolute power over the stuff going into the /resources
> folder.
>
> I have 2 questions:
>
> 1.) In my routes, I am using (wrap-resource) instead of (wrap-file).
> Is there any way to enable live updates, so that if the designer
> changes the images in /resources/public/img, they can then see the
> changed images when looking at the app in their browser? Right now I
> have to recompile the app and restart it for change to be visible to
> the designer.
>
> 2.) I notice that if a change is made in /resources, but no change is
> made anywhere else, then if I run "lein compile" nothing happens. Is
> there a way to force lein to compile?
>
> I have little insight about how to build a multiperson workflow while
> doing Clojure development. One thought I had: I could automate the re-
> build of the app, and give the designer an easy way to trigger that
> rebuild (click a button in Jenkins -- easy enough because we rely on
> Jenkins for all of our builds, and the interface is simple enough for
> non-programmers to handle). But I would like to hear what other people
> do.
>
>
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with your 
> first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en



-- 
Sean A Corfield -- (904) 302-SEAN
An Architect's View -- http://corfield.org/
World Singles, LLC. -- http://worldsingles.com/

"Perfection is the enemy of the good."
-- Gustave Flaubert, French realist novelist (1821-1880)

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to