{
  "configVersion": 1,
  "designId": "tree-rings-print",
  "rendererVersion": "tree-rings/1.0.0",
  "service": {
    "origin": "",
    "savePath": "/v1/designs",
    "analyticsPath": "/v1/analytics/events",
    "previewDebounceMs": 60
  },
  "sheet": {
    "width": 1000,
    "height": 1500
  },
  "assetVersion": "2026-11-11.2",
  "preview": {
    "exampleAsset": "design-tree-rings-print-example.jpg",
    "exampleAlt": "A painted oak tree-ring cross-section on cream paper, 25 counted rings, with Sarah and James’s wedding, first home and children marked as bold red rings and written above and below the tree with fine leader lines.",
    "seed": {
      "names": "Sarah & James",
      "from": "2001",
      "to": "2026",
      "events": [
        {
          "year": "2001",
          "name": "We married"
        },
        {
          "year": "2003",
          "name": "Our first home"
        },
        {
          "year": "2006",
          "name": "Tom arrives"
        },
        {
          "year": "2009",
          "name": "Ellie arrives"
        },
        {
          "year": "2014",
          "name": "Moving to Bath"
        },
        {
          "year": "2020",
          "name": "The year at home"
        },
        {
          "year": "2024",
          "name": "Tom graduates"
        }
      ],
      "foot": "Twenty-five rings, and counting",
      "initials": "",
      "look": "oak",
      "typeface": "classic",
      "centre": "heart",
      "frame": "plate"
    }
  },
  "fields": {
    "requiredLabel": "Make it yours",
    "required": [
      {
        "key": "names",
        "type": "text",
        "label": "The names",
        "hint": "The two of you, your family, or who it is for.",
        "maxLength": 36,
        "placeholder": "Sarah & James",
        "optional": false,
        "affects": "render"
      },
      {
        "key": "yearsGroup",
        "type": "columns",
        "$comment": "Both years in one column: the shell hides every column after the first until asked.",
        "columns": [
          [
            {
              "key": "from",
              "type": "text",
              "label": "The first year",
              "hint": "The year it began: your wedding, your family, a birth. It is the heart of the tree.",
              "maxLength": 4,
              "placeholder": "2001",
              "optional": false,
              "affects": "render"
            },
            {
              "key": "to",
              "type": "text",
              "label": "The last ring",
              "hint": "Leave it as this year, or the year the story closes. One ring for every year in between.",
              "maxLength": 4,
              "placeholder": "2026",
              "optional": true,
              "affects": "render"
            }
          ]
        ]
      },
      {
        "key": "events",
        "type": "people",
        "label": "The years that matter",
        "hint": "Up to ten, each with a year and a few words. Each one is written beside the tree and its ring is drawn in colour.",
        "min": 1,
        "max": 10,
        "nameMaxLength": 36,
        "namePlaceholder": "Tom arrives",
        "yearPlaceholder": "2006",
        "affects": "render",
        "messages": {
          "add": "Add a year",
          "remove": "Remove",
          "name": "What happened",
          "year": "Year",
          "count": "{count} so far — room for {remaining} more.",
          "full": "That’s the full ten: room for every one to be read.",
          "fewest": "One is the fewest, so this one stays."
        }
      },
      {
        "key": "foot",
        "type": "text",
        "label": "A line at the foot",
        "hint": "“Twenty-five rings, and counting”. A number before “rings” always matches your years.",
        "maxLength": 60,
        "optional": true,
        "affects": "render"
      }
    ],
    "optionsLabel": "The look",
    "options": [
      {
        "key": "look",
        "type": "thumbnails",
        "label": "The look",
        "default": "oak",
        "affects": "render",
        "options": [
          {
            "value": "oak",
            "label": "Painted oak",
            "thumbnail": "design-tree-rings-print-look-oak.jpg",
            "description": "warm painted oak with its bark, on cream paper"
          },
          {
            "value": "ink",
            "label": "Woodcut on white",
            "thumbnail": "design-tree-rings-print-look-ink.jpg",
            "description": "a woodcut print: black ink, white grain, the years in red"
          },
          {
            "value": "forest",
            "label": "Gold tone on forest",
            "thumbnail": "design-tree-rings-print-look-forest.jpg",
            "description": "glowing gold tone rings on deep forest green"
          },
          {
            "value": "walnut",
            "label": "Walnut on charcoal",
            "thumbnail": "design-tree-rings-print-look-walnut.jpg",
            "description": "dark walnut on charcoal"
          },
          {
            "value": "birch",
            "label": "Pale birch",
            "thumbnail": "design-tree-rings-print-look-birch.jpg",
            "description": "pale birch with its white bark, for a wedding"
          }
        ]
      },
      {
        "key": "frame",
        "type": "thumbnails",
        "label": "Frame",
        "default": "plate",
        "affects": "render",
        "options": [
          {
            "value": "open",
            "label": "Open",
            "thumbnail": "design-tree-rings-print-frame-open.jpg"
          },
          {
            "value": "plate",
            "label": "Fine border",
            "thumbnail": "design-tree-rings-print-frame-plate.jpg"
          },
          {
            "value": "specimen",
            "label": "Museum plate",
            "thumbnail": "design-tree-rings-print-frame-specimen.jpg"
          }
        ]
      },
      {
        "key": "centre",
        "type": "thumbnails",
        "label": "The centre",
        "default": "heart",
        "affects": "render",
        "options": [
          {
            "value": "heart",
            "label": "A heart",
            "thumbnail": "design-tree-rings-print-centre-heart.jpg"
          },
          {
            "value": "initials",
            "label": "Your initials",
            "thumbnail": "design-tree-rings-print-centre-initials.jpg"
          },
          {
            "value": "pith",
            "label": "Plain",
            "thumbnail": "design-tree-rings-print-centre-pith.jpg"
          }
        ]
      },
      {
        "key": "initials",
        "type": "text",
        "label": "Initials at the centre",
        "hint": "Leave blank to use the first letters of the names.",
        "maxLength": 5,
        "optional": true,
        "affects": "render",
        "showWhen": {
          "key": "centre",
          "equals": [
            "initials"
          ]
        }
      },
      {
        "key": "typeface",
        "type": "thumbnails",
        "label": "Lettering",
        "default": "classic",
        "affects": "render",
        "options": [
          {
            "value": "classic",
            "label": "Classic",
            "thumbnail": "design-tree-rings-print-typeface-classic.jpg"
          },
          {
            "value": "editorial",
            "label": "Editorial",
            "thumbnail": "design-tree-rings-print-typeface-editorial.jpg"
          },
          {
            "value": "museum",
            "label": "Museum",
            "thumbnail": "design-tree-rings-print-typeface-museum.jpg"
          },
          {
            "value": "modern",
            "label": "Modern",
            "thumbnail": "design-tree-rings-print-typeface-modern.jpg"
          }
        ]
      }
    ]
  },
  "presets": {
    "label": "Start from a milestone",
    "options": [
      {
        "id": "silver",
        "label": "Silver wedding",
        "values": {
          "names": "Sarah & James",
          "from": "2001",
          "to": "2026",
          "events": [
            {
              "year": "2001",
              "name": "We married"
            },
            {
              "year": "2003",
              "name": "Our first home"
            },
            {
              "year": "2006",
              "name": "Tom arrives"
            },
            {
              "year": "2009",
              "name": "Ellie arrives"
            },
            {
              "year": "2014",
              "name": "Moving to Bath"
            },
            {
              "year": "2020",
              "name": "The year at home"
            },
            {
              "year": "2024",
              "name": "Tom graduates"
            }
          ],
          "foot": "Twenty-five rings, and counting",
          "initials": "",
          "look": "oak",
          "typeface": "classic",
          "centre": "heart",
          "frame": "plate"
        },
        "thumbnail": "design-tree-rings-print-preset-silver.jpg"
      },
      {
        "id": "ruby",
        "label": "Ruby wedding",
        "values": {
          "names": "Margaret & Alan",
          "from": "1986",
          "to": "2026",
          "events": [
            {
              "year": "1986",
              "name": "Married at St Mary’s"
            },
            {
              "year": "1989",
              "name": "Claire is born"
            },
            {
              "year": "1992",
              "name": "Daniel is born"
            },
            {
              "year": "1998",
              "name": "The house on Elm Road"
            },
            {
              "year": "2011",
              "name": "Our first grandchild"
            },
            {
              "year": "2019",
              "name": "Retired to the coast"
            }
          ],
          "foot": "Forty rings, and every one of them ours",
          "initials": "",
          "look": "walnut",
          "typeface": "editorial",
          "centre": "initials",
          "frame": "plate"
        },
        "thumbnail": "design-tree-rings-print-preset-ruby.jpg"
      },
      {
        "id": "golden",
        "label": "Golden wedding",
        "values": {
          "names": "Patricia & Brian",
          "from": "1976",
          "to": "2026",
          "events": [
            {
              "year": "1976",
              "name": "Married in Harrogate"
            },
            {
              "year": "1979",
              "name": "Our first home"
            },
            {
              "year": "1981",
              "name": "Helen is born"
            },
            {
              "year": "1984",
              "name": "Mark is born"
            },
            {
              "year": "1995",
              "name": "The year in Canada"
            },
            {
              "year": "2008",
              "name": "Our first grandchild"
            },
            {
              "year": "2016",
              "name": "Ruby wedding in Cornwall"
            },
            {
              "year": "2021",
              "name": "Back together again"
            }
          ],
          "foot": "Fifty rings of gold",
          "initials": "",
          "look": "forest",
          "typeface": "museum",
          "centre": "heart",
          "frame": "specimen"
        },
        "thumbnail": "design-tree-rings-print-preset-golden.jpg"
      },
      {
        "id": "family",
        "label": "Our family since",
        "values": {
          "names": "The Okafors",
          "from": "2009",
          "to": "2026",
          "events": [
            {
              "year": "2009",
              "name": "Where it began"
            },
            {
              "year": "2011",
              "name": "Amara arrives"
            },
            {
              "year": "2014",
              "name": "Chidi arrives"
            },
            {
              "year": "2017",
              "name": "Our home in Leeds"
            },
            {
              "year": "2021",
              "name": "Biscuit the dog"
            },
            {
              "year": "2025",
              "name": "Amara starts secondary"
            }
          ],
          "foot": "Seventeen rings, and growing",
          "initials": "O",
          "look": "birch",
          "typeface": "classic",
          "centre": "initials",
          "frame": "open"
        },
        "thumbnail": "design-tree-rings-print-preset-family.jpg"
      },
      {
        "id": "sixty",
        "label": "Sixty rings for Dad",
        "values": {
          "names": "Dad",
          "from": "1966",
          "to": "2026",
          "events": [
            {
              "year": "1966",
              "name": "Born in Leicester"
            },
            {
              "year": "1984",
              "name": "First job, first car"
            },
            {
              "year": "1990",
              "name": "Met Mum"
            },
            {
              "year": "1993",
              "name": "Married"
            },
            {
              "year": "1995",
              "name": "Me"
            },
            {
              "year": "1998",
              "name": "My sister"
            },
            {
              "year": "2012",
              "name": "The London marathon"
            },
            {
              "year": "2023",
              "name": "Grandad at last"
            }
          ],
          "foot": "Sixty rings, and still growing",
          "initials": "",
          "look": "ink",
          "typeface": "museum",
          "centre": "pith",
          "frame": "specimen"
        },
        "thumbnail": "design-tree-rings-print-preset-sixty.jpg"
      }
    ]
  },
  "recipes": {
    "label": "Ready-made looks",
    "items": [
      {
        "id": "museum",
        "label": "Museum plate",
        "look": {
          "look": "ink",
          "typeface": "museum",
          "centre": "pith",
          "frame": "specimen"
        }
      },
      {
        "id": "gilded",
        "label": "Gold tone on forest",
        "look": {
          "look": "forest",
          "typeface": "classic",
          "centre": "heart",
          "frame": "plate"
        }
      }
    ]
  },
  "cart": {
    "summary": "{names} · {look.label} · {frame.label}"
  }
}
