@alexandrkozyrev We do support spec (for example the new-fiddle button is validated with this spec)
(s/def :hyperfiddle.ide/new-fiddle (s/keys :req [:fiddle/ident]))
(s/def :fiddle/ident keyword?)
Hyperfiddle will automatically detect specs based on the namespaced keywords (attributes, fiddle-ident) and validate for you.
BUT you can't define specs from userland yet. We need to improve our compiler to support (ns (:require [clojure.spec.alpha :as s]))
and then you'll be able to register your own specs. Because spec is implemented with macros, it doesn't work unless you explicitly :require it.This is a high priority, I'm supposed to work on it next week
We also have the beginnings of a Hyperfiddle data model spec to validate the hyperfiddle editor and define it's business rules https://github.com/hyperfiddle/hyperfiddle/blob/350fe36e91056465d1bd339a74ca28ce06afaad5/src/hyperfiddle/fiddle.cljc