Thanks Jeroen - I'd not spotted that! Yes, definitely a better idea -
will update the examples.
James
On 31/03/15 12:49, Jeroen van Dijk wrote:
Thanks for sharing James! I'll have a look.
As a side note, I see in the example code that you are dissoc-ing on
the component. This can lead to unexpected behaviour as I have
experienced (mostly in repl cases), as this will return a map instead
of a record when the field is not part of the record. This is also
mentioned in the readme of https://github.com/stuartsierra/component
where `(assoc component ::field nil)` is recommended
Jeroen
On Sun, Mar 29, 2015 at 9:44 PM, James Henderson <ja...@jarohen.me.uk
<mailto:ja...@jarohen.me.uk>> wrote:
A link would have been really helpful, I'm guessing! Here it is:
https://github.com/james-henderson/phoenix
James
On Sunday, 29 March 2015 20:42:06 UTC+1, James Henderson wrote:
Hi all,
I've just released v0.1.0 of Phoenix - a 'batteries included,
but removable' library to wire up and configure
Component-based systems. If you've ever wondered whether you
really have to copy and paste 'system.clj', 'dev.clj' and
'user.clj' from one Component project to the next, it's well
worth having a look at!
Having used Phoenix in anger on a few projects for a couple of
weeks, it's now had a fair bit of battle-testing, kinks
ironed, and the like - so thought I'd make another post to the
list :)
Features added since I last posted:
* Many re-usable Components - CLJS compiler, Aleph,
http-kit, JDBC pool, CSS compiler (using Garden) - see
https://github.com/james-henderson/phoenix/tree/master/modules/
for more details. These components can be used whether or
not you choose to use Phoenix, and, likewise, non-Phoenix
components can be used in Phoenix-configured systems -
hooray for composability :)
* Support for managing passwords/credentials - you can store
these, encrypted, in your configuration, and Phoenix will
decrypt them for you.
* Pulling configuration variables from environment variables
and JVM properties, in addition to the Phoenix config files
* 'Batteries removable' API - if you need a little more
flexibility, or want to compose Phoenix with something else.
* A fair few bugfixes/API changes through usage
There's also a couple of Lein templates to get up and running
quickly:
* `lein new phoenix-webapp <my-project> -- :reagent` will
get you a working webapp (other options are `:om`,
`:om-sablono`or `:flow`).
* If you don't want the CLJS side, `lein new phoenix-api
<my-project>` just has an example server-side API.
Would be great to get your thoughts and feedback on this - is
this a good way to wire up such systems?
Cheers,
James
--
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
<mailto: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
<mailto:clojure%2bunsubscr...@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
<mailto:clojure+unsubscr...@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 a topic in the
Google Groups "Clojure" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/clojure/EgfoZK0vV08/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
clojure+unsubscr...@googlegroups.com
<mailto:clojure+unsubscr...@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.