This just looks like a great way to make your back-end depend on your front-end. AJAX calls are usually best served in an API like manner (here's some data, do what you like). This lets you iterate on the client without messing with the server, which this would destroy. If you have an application style client, you're also probably making the same data requests for different purposes.<p>Granted it's quite neat, but it seems like a bad idea. I think too many libraries recently are focusing on length of code to the detriment of good principles and clarity.
Keep client side code exactly that: client side. If you're trying to do a separation like this, you clearly have no clue the hell you're going to get yourself into.<p>I'd suggest going back and reviewing the concepts of "graceful degradation"; for large scale web applications where this doesn't really apply, you'll quickly find yourself wanting the code streamlined and in <i>one place</i>.
I really think this project is misguided. The idea that the responses from my data layer should also contain the code which is executed to present it client-side, well it's just plain wrong. The two should never be so tightly coupled.