Prismatic Schema is awesome for describing the (web) apis, does also 
validations & coersion. Using it in all web projects nowadays. If you are 
thinking of json apis, swagger is a great tool to publish out the 
documentation. For clojure at least these schema / swagger-aware web libs 
do exist:

Schema & Swagger:
- compojure-api (https://github.com/metosin/compojure-api)
- fnhouse (https://github.com/Prismatic/fnhouse)

Swagger:
- octohipster (https://github.com/myfreeweb/octohipster)
- swag (https://github.com/narkisr/swag)

perjantai, 11. huhtikuuta 2014 11.17.59 UTC+3 Colin Yates kirjoitti:
>
> As others have said - a more focused question would help.
>
> Our back end runs on ring + compojure using 
> https://github.com/jkk/honeysql for querying and straight 
> https://github.com/clojure/java.jdbc for writes.  We use 
> https://github.com/marick/Midje/wiki rather than clojure.test and 
> https://github.com/gdeer81/marginalia for documentation.
>
> This is the first major Clojure app, so lots of lessons have been learnt. 
>  Things I wish I knew:
>
>    - read the ring spec - it is all just a map, phenomenally powerful. 
>     Now read it again
>    - consider using https://github.com/zcaudate/lein-midje-doc as well 
>    as/instead of marginalia
>    - consider using https://github.com/jaycfields/expectations instead of 
>    midje.  Midje is fantastic, but expectations, particularly the 'diffing' 
>    looks like a real win
>    - consider using something like https://github.com/prismatic/schema to 
>    document your API from day one.
>    - you can fight it as hard as you like but you will eventually end up 
>    using emacs, clojure-mode, cider, paredit and magit and then wonder how 
> you 
>    ever lived without it, but not without spending at least a month or two 
>    cursing anything to do with emacs :).
>
> Just my random, off the cuff thoughts.  Hope they help.
>
> On Thursday, April 10, 2014 3:13:19 PM UTC+1, Kashyap CK wrote:
>>
>> Hi,
>> I have the opportunity to build a set of services from scratch. I plan to 
>> use clojure for this.
>> I'd like to experiment with options available out there - options such as 
>> - what webserver, what database etc. I'd like it very much if you could 
>> share some of your experiences in this and possibly some pitfalls to avoid.
>> Regards,
>> Kashyap
>>
>

-- 
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