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.