The Luminus framework, in my opinion, is mostly just a collection of libraries. That doesn't mean Luminus isn't a great framework, but I wanted to create something that felt more like a single solution, and not just a collection of libraries. The Noir framework is now called lib-noir for a reason and I want to avoid that with CHP.
 
The key solution that CHP provides is being able to embed Clojure code into a HTML file and have it be dynamically evaluated. Unlike PHP, you can't start a block of code (for, doseq, etc...), embed HTML, and then finish the code block. Also, the output of code isn't displayed by default. You have to explicitly use print or some other output printing function to display data. This helps prevent much of the mess that PHP is known for.
 
The other solutions that CHP provides, such as the dynamic auto-loading of middleware, the auto-documenting and dynamically generated DB to JSON API, view generation, route generation, html form generation, and so much more, are all optional. If you just need a simple website you can remove everything in the resources folder and create a simple CHTML (Clojure HTML) file.
 
Other than what I've mentioned above, this is what CHP currently has to offer out of the box. Keep in mind that these features are all optional and you can still use Ring and Compojure components (routes, middleware, etc...).

  • Run Clojure inside a HTML file with the <clj></clj> tags
  • Request params ex. ($p userid)
  • Common web headers ex. ($ user-agent)
  • Web Headers ex. ($$ cache-control)
  • Environmental variables ex. (env java.vm.name)
  • Have multiple method handlers under a single route (get, post, put, delete, and head)
  • Routes can be defined in seperate files and namespaces
  • Style templates can be written in CHTML ex. chp.template/using-template
  • Create SQL database schemas ex. lein schema
  • Perform SQL database migrations ex. lein migrate
  • Perform migration rollbacks ex. lein rollback
  • Manipulate SQL databases with KormaSQL
  • Generate Page views (new,view,edit,list)
  • Generate _javascript_ / ECMAScript
  • Generate HTML
  • Generate CSS
The documentation of the very Alpha framework can offer a better and more detailed list of capabilities and how to use them. https://github.com/runexec/chp#documentation
 
 
 
 
15.07.2013, 02:24, "Bastien" <bastiengue...@gmail.com>:
> Hi Kelker,
>
> thanks for your work on CHP.  I've not tested it yet, because
> I'm right now into learning Luminus.
>
> Could you explicit the differences between the two frameworks?
>
> Thanks in advance,
>
> --
>  Bastien

--
--
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/groups/opt_out.
 
 

Reply via email to