I was using both Jsviews (https://github.com/BorisMoore/jsviews) and Jsrender (https://github.com/BorisMoore/jsrender), with of course jQuery and jQueryMobile for the interface. The custom tag provided by Jsrender gives great flexibility to build fancy interface while Jsviews' data-link auto update is so easy to use.
The only thing is that, Jsviews would not drive a Jsrender custom tag to update.
Currently doing this manually since my point of modification is quite limited. Might try again later to fix in the libraries themselves.
Related question:
http://stackoverflow.com/questions/13328042/how-to-keep-helper-function-generated-html-tags-for-jsviews