diff --git a/doc/etemplate2/pages/getting-started/widgets.md b/doc/etemplate2/pages/getting-started/widgets.md
index 3a1054d54e..70fd029f21 100644
--- a/doc/etemplate2/pages/getting-started/widgets.md
+++ b/doc/etemplate2/pages/getting-started/widgets.md
@@ -21,4 +21,29 @@ If you just want to use existing widgets, you can put them in your .xet template
```
-
\ No newline at end of file
+
+
+## Attributes
+
+Widget behaviour is customised by setting attributes
+
+### ID
+
+// TODO, maybe some notes about content & namespaces.
+
+### Disabled vs Readonly vs Hidden
+
+Disabled widgets are fully shown, but in a way that indicates the value cannot be changed.
+
+Readonly widgets are shown in a special way that displays a value, but is not interactive. Often we switch to a
+different component for faster performance, such as a simple
+label. It is impossible to change the value of a readonly widget.
+
+Hidden widgets are not visible.
+
+```html:preview
+
+
+
+Hidden textbox
+```
\ No newline at end of file