shinkansen-engine
v1.2.488
Published
Shinkansen Engine
Downloads
3,847
Readme
shinkansen-engine
Shinkansen generates JSON Schema valid documents from user submissions with <html />
forms.
Engine
Engine renders React layouts with <html />
form field and group elements, as well as optional navigation components, using Pinion, Gears and Transmission.
Layouts can be produced from a JSON Schema transformed into the Zashiki description format. The user submission generated by the layout will be valid according to that JSON Schema.
Storybook
We use Storybook to present React layouts and components.
Our Stories contain single-value components for development. (Layouts for production are composed of one or several components.)
Typically, these render with an <input />
element, but under Controls you can see how a choice can be captured with <radio />
or <select />
elements.
String values
Number values
Array values
Whether items is an object or items is an array depends on how Zashiki interprets the JSON Schema (assuming that Zashiki has mechanically translated a JSON Schema into a description, and the description hasn't been generated manually). It matters for validating the document according to the schema, but for humans the distinction may seem arbitrary. Our stories account for both structures.
Array (Items is an object)
- String
- String (Enum)
- String (Any of)
- String (One of)
- Number
- Number (Enum)
- Number (Any of)
- Number (One of)
- Boolean
- Boolean (Enum)
- Boolean (Any of)
- Boolean (One of)
- Null
- Null (Enum)
- Null (Any of)
- Null (One of)
Array (Items is an array)
- String
- String (Enum)
- String (Any of)
- String (One of)
- Number
- Number (Enum)
- Number (Any of)
- Number (One of)
- Boolean
- Boolean (Enum)
- Boolean (Any of)
- Boolean (One of)
- Null
- Null (Enum)
- Null (Any of)
- Null (One of)
Object values
- Object - String
- Object - String (Enum)
- Object - String (Any of)
- Object - String (One of)
- Object - Number
- Object - Number (Enum)
- Object - Number (Any of)
- Object - Number (One of)
- Object - Boolean
- Object - Boolean (Enum)
- Object - Boolean (Any of)
- Object - Boolean (One of)
- Object - Null
- Object - Null (Enum)
- Object - Null (Any of)
- Object - Null (One of)