Reveal Pro: Forms

Reveal Pro’s Forms allow you to convert data structure specifications to UI input components for creating these data structures. This is a generic and multi-purpose tool that supports Clojure spec and JSON Schema out of the box and can be extended to other data specification libraries.

What leverage can it give you?

  1. Learn possible shapes of expected data.

    Specs describe the data shape, but looking at the spec is not the easiest way to understand what are the possible shapes for the specified data. Do you remember all the clauses ns form supports? Where to look for available :gen-class options? With Forms, you can learn all that simply starting from the clojure.core/ns symbol:

  2. Explore data-driven APIs

    Form state is a ref that can be observed — you can watch it and create derived views that refresh on form changes:

  3. Create data structures with contextual help

    Forms provide contextual actions and information on selectable parts of data structures that you can activate by pressing F1 or Ctrl Space. For example, with spec forms, you can use fine-grained generators to generate parts of the data structures. You can also copy and paste these data structures as text:

Forms are available either with: