The recommended way to manage components in Luminus is using the mount 
library (https://github.com/tolitius/mount), it's much less intrusive than 
Component in my opinion and provides most of the same benefits without 
requiring you to structure your application around it. The latest version 
of mount has both Clojure and ClojureScript support as well. It's now 
included in the template by default in recent versions.

On Thursday, December 3, 2015 at 5:24:48 AM UTC-5, Sven Richter wrote:
>
> It definitly is compatible. It just takes some manual work. Like I said, I 
> started myself with the luminus template and implement components + other 
> stuff into it. 
> You can definitly do it and I also recommend it for the sole reason that a 
> change to the routes in compojure will lead to a restart of the repl. You 
> can circumvent that by reloading the code base. 
> It may have changed in the last two years, but then I am not up to date.
>
> Best Regards,
> Sven
>
> Am Mittwoch, 2. Dezember 2015 22:05:58 UTC+1 schrieb Webdev Tory Anderson:
>>
>> Maybe I spoke too soon when mentioning incompatibility between Luminus 
>> and Reloaded. I look forward to taking a closer look at your work!
>>
>> On Wednesday, December 2, 2015 at 1:49:20 AM UTC-7, Sven Richter wrote:
>>>
>>> Hi,
>>>
>>> I based a template on luminus myself and added some stuff. It also 
>>> contains predefined components so you don't have to add it yourself.
>>> You can look how its done here: 
>>> https://github.com/sveri/closp/tree/master/resources/leiningen/new/closp/clj/components
>>>
>>> Best Regards,
>>> Sven
>>>
>>> Am Dienstag, 1. Dezember 2015 17:43:41 UTC+1 schrieb Colin Yates:
>>>>
>>>> The general idea is to use the ‘reloaded’ pattern, so rather than `lein 
>>>> run` you would have a function which starts and stop the system. You still 
>>>> need to run figwheel and mongo (yay for document databases) as separate 
>>>> processes, although I tend to do those in straight terminals rather than 
>>>> emacs shells as they live longer than my emacs does.
>>>>
>>>> You can find more about the reloaded pattern and a prescripted approach 
>>>> to structuring your app here: https://github.com/stuartsierra/component
>>>> .
>>>>
>>>> I think it is fairly common to have:
>>>>  - your major building blocks as components
>>>>  - a specific dev namespace which is only on the :dev profile
>>>>  - fns in that namespace to start/stop components or the entire system
>>>>
>>>> There are some libraries which build on the component library: 
>>>> https://github.com/danielsz/system for example.
>>>>
>>>> HTH.
>>>>
>>>> On 1 Dec 2015, at 16:26, Webdev Tory Anderson <web...@toryanderson.com> 
>>>> wrote:
>>>>
>>>> I recently read something hinting at ways of streamlining the startup 
>>>> process for the dev environment, so I'm hoping you good folks can give me 
>>>> some tips. I'm developing a web app in Linux, Clojurescript/Clojure 
>>>> (incidentally using the Luminus architecture). I use emacs (that part's 
>>>> non-negotiable; sorry). The cumbersome startup process I usually have goes 
>>>> like this:
>>>>
>>>> M-x shell
>>>>> mongod # start the mongo daemon
>>>>>
>>>>> M-x shell
>>>>> lein run # start the app and server
>>>>>
>>>>> M-x shell
>>>>> lein figwheel #start CLJS development
>>>>>
>>>>> (open a .clj file)
>>>>> C-c M-c  # (cider-connect)
>>>>> # insert localhost, port num, which proj. to connect to
>>>>>
>>>>>
>>>> This is usually bearable since I only have to do it once or twice a 
>>>> week, but it's definitely the sort of redundancy that would be nice to 
>>>> eliminate. The "lein run" is good to have foregrounded because I can see 
>>>> timbre statements and cleanly reboot when necessary. Figwheel, at the 
>>>> moment, has to be foregrounded because that's where the figwheel prompt 
>>>> ends up (I'd love to have that in Cider somehow, though). 
>>>>
>>>> Any recommendations on how to chop some of these steps off?
>>>>
>>>>
>>>>
>>>> -- 
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Clojure" group.
>>>> To post to this group, send email to clo...@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+u...@googlegroups.com
>>>> For more options, visit this group at
>>>> http://groups.google.com/group/clojure?hl=en
>>>> --- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "Clojure" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to clojure+u...@googlegroups.com.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>>
>>>>

-- 
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
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to