Most Haskell web application frameworks seem to focus on doing a lot of the work on server (templating, forms, etc.). However, most everyone else seem to be moving more and more of the application on the client and talking to the server via narrow REST APIs.
I'm looking to build a web app that mostly runs on the client. I'd like to base the client-side on Backbone.js (or similar) and do HTML templating fully on the client using a JavaScript templating library.
I'd like to implement the server-side in Haskell, preferably using the Snap framework.
Has anyone tried using the Snap framework this way? How can I implement a basic REST API with GET, POST, PUT, DELETE methods in Snap? Or should I go for something even simpler than Snap for my server?