Fork me on GitHub
#re-frame
<
2016-01-16
>
adamtrilling16:01:55

Arg I am driving myself nuts someone help me make a decision simple_smile

adamtrilling16:01:05

I want to start a re-frame project with a clojure back end

adamtrilling16:01:29

I like the idea of using boot because I don’t need to start two separate processes (one for cljs and one for clj)

adamtrilling16:01:50

But it seems like that’s not a good idea for someone inexperienced with the ecosystem because boot doesn’t have a lot of out-of-the-box solutions for things like running front- and back-end reloading servers at the same time

adamtrilling16:01:30

And there are many options for lein templates, but there doesn’t seem to be a good way to combine templates

martinklepsch16:01:52

@adamtrilling: take a look at saapas for an extensive example of frontend + backend project https://github.com/Deraen/saapas

martinklepsch16:01:32

@adamtrilling: I'd generally try to have two separate projects, one with HTTP API and the other one containing the frontend

meow16:01:08

I believe @seancorfield is adding support for lein templates to boot

adamtrilling16:01:26

Hm that sappas build.boot is a great example

jaen16:01:51

> boot doesn’t have a lot of out-of-the-box solutions for things like running front- and back-end reloading servers at the same time Hmm, what do you mean by that? I run boot-http to serve static files and have the backend as a reloadable component system using system.boot and it works pretty well.

adamtrilling16:01:26

@jaen dumb question: what’s system.boot?

jaen16:01:22

Just a helper task around reloaded.repl for boot, let me find a link.

adamtrilling16:01:53

Also interesting...

adamtrilling16:01:08

Thanks everyone!

seancorfield16:01:11

As @meow says, yes, I have a prototype Boot task that runs Leiningen templates! It will support "Boot templates" too and a bunch more stuff.

seancorfield16:01:53

For now boot -d seancorfield/boot-new:0.1.0-SNAPSHOT -t templatename -n projectname should work if you want to test it on you favorite lein-template

malcolmsparks18:01:35

How will boot templates differ from Lein's?

seancorfield18:01:19

Really just naming conventions. So foo/boot-template and boot.new.foo/foo etc. mostly because it seems weird to have a Leiningen template that generates a Boot project.

seancorfield18:01:37

But boot-new will support both.

seancorfield18:01:12

The built-in templates (app, default, task, template) will generate Boot-based projects.

seancorfield18:01:11

Boot templates will also support generating new pieces of an existing project at some point (like Rails generation of controllers etc).

seancorfield18:01:06

Suggestions and feedback welcome on GitHub.