            [:button
             {:class "btn btn-success btn-lg btn-block"
              :on-click #(put! level-changed-c ::inc)}
+            [:i {:class "glyphicon glyphicon-chevron-up"}]]]])))))
+
+(defn strength-indicator
+  "Editable strength indicator."
+  [player owner]
+  (reify
+    om/IRenderState
+    (render-state [_ state]
+      (let [strength-changed-c (:strength-changed state)
+            strength (max (+ (:level player) (:strength player)) 1)]
+        (html
+         [:div {:class "row"}
+          [:div {:class "col-sm-2"}
+           [:button
+            {:class "btn btn-info btn-lg btn-block"
+             :on-click #(put! strength-changed-c ::dec)}
+            "-"]]
+          [:div {:class "col-sm-8"}
+           [:div {:class "progress"}
+            [:div {:class "progress-bar progress-bar-warning"
+                   :role "progressbar"
+                   :aria-valuenow strength
+                   :aria-valuemin "0"
+                   :aria-valuemax "50"
+                   :style {:width (str (* strength 2) "%")}}
+             strength]]]
+          [:div {:class "col-sm-2"}
+           [:button
+            {:class "btn btn-info btn-lg btn-block"
+             :on-click #(put! strength-changed-c ::inc)}
             "+"]]])))))
 
 (defn editable-label

(ns munchkin-toolbox.core
  (:require-macros [cljs.core.async.macros :refer [go]])
  (:require [om.core :as om :include-macros true]
            [cljs.core.async :refer [put! chan <! go]]
            [sablono.core :as html :refer-macros [html]]))

(enable-console-print!)

           [:button
            {:class "btn btn-danger btn-lg btn-block"
             :on-click #(put! level-changed-c ::dec)}
            [:i {:class "glyphicon glyphicon-chevron-down"}]]]
          [:div {:class "col-sm-8"}
           [:div {:class "progress"}
            [:div {:class "progress-bar"
