             meta-attrs (-meta-attrs vars)
             className (str (-compile-class-name props) var-class)
             props (-> (apply dissoc props (concat attrs meta-attrs [:class :class-name :className]))
-                      (assoc :className className))]
+                      (assoc :className className)
+                      -camel-case-attrs)]
         (create-element props children)))))

       flatten
       set))

(defn -styled [cls static vars attrs create-element]
  (let [clsn (str cls "-" (gensym))
        static (if ^boolean goog.DEBUG

        anim-name))))

;; ==============================
(defn -camel-case [k]
  (if (or (keyword? k)
          (string? k)
          (symbol? k))
    (let [[first-word & words] (cstr/split (name k) #"-")]
      (if (or (empty? words)
              (= "aria" first-word)
              (= "data" first-word))
        k
        (-> (map cstr/capitalize words)
            (conj first-word)
            cstr/join
            keyword)))
    k))

(defn -compile-class-name [props]
  (let [className
        (-> props
