Enlive (
https://github.com/cgrand/enlive/) is one of Clojure's most popular templating systems. It uses TagSoup under the hood, but there are a few minor things you have to do to make it work with AngularJS.
Here's how you normally start an AngularJS document:
<!doctype html>
However, TagSoup only recognizes uppercase DOCTYPE so if you enter it as lowercase, Enlive won't include the doctype in the generated document.
TagSoup also rewrites the above HTML tag as...
<html ng-app="ng-app">
...but this causes JavaScript errors...
You can get around this by setting ng-app to an empty string:
<!DOCTYPE html>
<html ng-app="">
- James