       (let [{:keys [connection column-id note]} app
             [id note] note]
         (dom/div #js {:className "note"}
-                 (:text note) " "
+                 (om/build editable note
+                           {:opts {:edit-key :text
+                                   :on-edit (partial edit-note connection id column-id)}})
                  (count (:votes note)) " votes!"
                  (om/build create-vote-button {:connection connection
                                                :column-id column-id

                         :className "new-environment"}
                    "New Environment")))))

(defn note-view [app owner]
  (reify
    om/IRender

  (delete-note [column-id id state]
               (update-in state [column-id :notes] dissoc id))
  (new-vote [id column-id note-id state]
            (update-in state [column-id :notes note-id :votes] conj id))
  (edit-note [id column-id new-text state]
             (assoc-in state [column-id :notes id :text] new-text)))

(defn apply-actions [actions initial-state]
  (reduce (fn [state action]
