+
+
+
+}
diff --git a/5ee9e6-color-tree/example/ColorTreeFieldExample/bc3ae52b-904d-46b5-9913-9f703f7cac04.json b/5ee9e6-color-tree/example/ColorTreeFieldExample/bc3ae52b-904d-46b5-9913-9f703f7cac04.json
new file mode 100644
index 00000000..a13b5ffe
--- /dev/null
+++ b/5ee9e6-color-tree/example/ColorTreeFieldExample/bc3ae52b-904d-46b5-9913-9f703f7cac04.json
@@ -0,0 +1,25 @@
+{
+ "data": {
+ "type": "card",
+ "attributes": {
+ "pick": {
+ "hex": null,
+ "munsell": null
+ },
+ "title": "Color Tree Field — fresh",
+ "description": "A fresh instance: open the atlas in the studio below and hold a spot on the page to make your first pick.",
+ "cardInfo": {
+ "name": null,
+ "summary": null,
+ "cardThumbnailURL": null,
+ "notes": null
+ }
+ },
+ "meta": {
+ "adoptsFrom": {
+ "module": "../color-tree-field-playground-example",
+ "name": "ColorTreeFieldExample"
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/5ee9e6-color-tree/example/ColorTreeFieldExample/dc3c493e-5883-4f74-b6e4-63d2b75795c6.json b/5ee9e6-color-tree/example/ColorTreeFieldExample/dc3c493e-5883-4f74-b6e4-63d2b75795c6.json
new file mode 100644
index 00000000..8d7aac67
--- /dev/null
+++ b/5ee9e6-color-tree/example/ColorTreeFieldExample/dc3c493e-5883-4f74-b6e4-63d2b75795c6.json
@@ -0,0 +1,25 @@
+{
+ "data": {
+ "type": "card",
+ "attributes": {
+ "pick": {
+ "hex": "#2e8b6a",
+ "munsell": "5G 5/8"
+ },
+ "title": "Color Tree Field",
+ "description": "A Munsell color pick as a field: the edit format is the full 3D studio, so any card gets perceptual hue/value/chroma picking with one contains().",
+ "cardInfo": {
+ "name": null,
+ "summary": null,
+ "cardThumbnailURL": null,
+ "notes": null
+ }
+ },
+ "meta": {
+ "adoptsFrom": {
+ "module": "../color-tree-field-playground-example",
+ "name": "ColorTreeFieldExample"
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/5ee9e6-color-tree/example/color-tree-field-playground-example.gts b/5ee9e6-color-tree/example/color-tree-field-playground-example.gts
new file mode 100644
index 00000000..bb89ac1c
--- /dev/null
+++ b/5ee9e6-color-tree/example/color-tree-field-playground-example.gts
@@ -0,0 +1,137 @@
+// Playground example for ColorTreeField — shows the field the way a card
+// author will meet it: the 3D studio as the edit format, the compact
+// embedded/atom read-outs, and the one-line `contains()` to adopt it.
+import {
+ CardDef,
+ Component,
+ contains,
+ field,
+} from 'https://cardstack.com/base/card-api';
+import StringField from 'https://cardstack.com/base/string';
+import CodeSnippet from '../../components/code-snippet';
+import { ColorTreeField } from '../color-tree-field';
+
+const usageCode = `import { ColorTreeField } from '@cardstack/catalog/5ee9e6-color-tree/color-tree-field';
+
+export class MyCard extends CardDef {
+ @field accentColor = contains(ColorTreeField);
+}`;
+
+export class ColorTreeFieldExample extends CardDef {
+ static displayName = 'Color Tree Field Example';
+
+ @field pick = contains(ColorTreeField);
+ @field title = contains(StringField);
+ @field description = contains(StringField);
+
+ static isolated = class Isolated extends Component {
+
+
+
+ Field Example
+
{{@model.title}}
+ {{#if @model.description}}
+
{{@model.description}}
+ {{/if}}
+
+
+
+
+ Interactive
+ Open the atlas, hold a spot to pick
+