         properties[item.name] = item.value
 
     CartJS.Core.addItem(id, quantity, CartJS.Utils.unwrapKeys(properties))
+
+  # Handler for rendering simple cart properties to bound elements.
+  render: (e, cart) ->
+    # Build a hash of render context.
+    context = {
+      'item_count': cart.item_count,
+      'total_price': cart.total_price,
+      'total_price_money': CartJS.Utils.formatMoney(cart.total_price, CartJS.settings.moneyFormat),
+      'total_price_money_with_currency': CartJS.Utils.formatMoney(cart.total_price, CartJS.settings.moneyWithCurrencyFormat),
+    }
+
+    # Render the context to elements as needed.
+    jQuery('[data-cart-render]').each ()->
+      $this = jQuery(this)
+      $this.text context[$this.data('cartRender')]

  # Initialise the Data API.
  init: () ->
    CartJS.Data.setEventListeners('on')

  # Tear down the Data API.
  destroy: () ->

    e.preventDefault()
    $element = jQuery(e.target)
    CartJS.Core.updateItemById $element.data('cartUpdateId'), $element.data('cartQuantity')

  # Handler for [data-cart-clear] click events.
  clear: (e) ->
    e.preventDefault()
    CartJS.Core.clear()

  # Handler for [data-cart-toggle] change events.
  toggle: (e) ->
