Who this is for. Whoever reviews a layout before authors use it: a second developer, a content lead, or the modeller who built it. Open a test record on the layout, as an author would, and go through the list.
Names
- [ ] Every area name is lower camel case, says what the value is, and matches the name used for the same thing on other layouts.
- [ ] No area is named after a method the record already has (
name,url,parent,childrenand the rest). - [ ] Switches are named for the non-default behaviour (
hideDate, notshowDate). - [ ] The layout has an identifier if any code or import refers to it.
What the author reads
- [ ] Every area has a label a non-developer understands.
- [ ] Every area whose right entry is not obvious has help text, and every rule is stated in it ("Required. One to three slides.").
- [ ] Longer explanations are in info, not crammed into help.
Rules and defaults
- [ ] Required is set wherever the page needs the value to make sense.
- [ ] Collections have a minimum and maximum where the design needs them.
- [ ] Defaults make an empty record look intentional, and are set on the layout area unless every use of the input type should share them.
- [ ] Each select reuses an existing input type where the options are the same.
The shape of the form
- [ ] Styling and behaviour choices are attributes; settings of one field are attached to it.
- [ ] A form of more than about ten fields is split into groups named for the author's tasks.
- [ ] Every component and collection area lists its supported layouts.
The picker and the template
- [ ] A component layout has a thumbnail that shows its shape.
- [ ] The template reads every area the layout defines, and no area the layout does not define.
- [ ] The record renders sensibly with every optional area empty, signed out.
- [ ] Text the author edits directly is printed so that live preview can update it (Live preview).
Each item points back to a page of this unit or the next: The fields of a layout area, Validation and default content, Area groups, Attributes: settings, not content.