@omniharmonic/openspace-cli 0.1.2 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. package/README.md +11 -1
  2. package/dist/{agents-md-2DTXWUZQ.js → agents-md-3W4PIY4N.js} +2 -2
  3. package/dist/bin.js +2 -2
  4. package/dist/chunk-6NIIOHOX.js +39190 -0
  5. package/dist/chunk-6NIIOHOX.js.map +1 -0
  6. package/dist/{chunk-3F6TAUAT.js → chunk-7I6IJI6Z.js} +9184 -874
  7. package/dist/chunk-7I6IJI6Z.js.map +1 -0
  8. package/dist/index.d.ts +2 -0
  9. package/dist/index.js +2 -2
  10. package/dist/starter/site/AGENTS.md +11 -4
  11. package/dist/templates/beacon/content/collections/events/_collection.json +13 -0
  12. package/dist/templates/beacon/content/collections/events/keeper-training-november.mdoc +14 -0
  13. package/dist/templates/beacon/content/collections/events/planting-day-harbour-ward.mdoc +14 -0
  14. package/dist/templates/beacon/content/collections/events/planting-day-linden-north.mdoc +14 -0
  15. package/dist/templates/beacon/content/collections/news/2026-09-12-heat-map-2026.mdoc +13 -0
  16. package/dist/templates/beacon/content/collections/news/2026-09-30-school-gardens-harvest.mdoc +13 -0
  17. package/dist/templates/beacon/content/collections/news/2026-10-14-planting-season-begins.mdoc +13 -0
  18. package/dist/templates/beacon/content/collections/news/_collection.json +16 -0
  19. package/dist/templates/beacon/content/pages/about.json +572 -0
  20. package/dist/templates/beacon/content/pages/contact.json +260 -0
  21. package/dist/templates/beacon/content/pages/donate.json +406 -0
  22. package/dist/templates/beacon/content/pages/get-involved.json +412 -0
  23. package/dist/templates/beacon/content/pages/home.json +701 -0
  24. package/dist/templates/beacon/content/pages/our-work.json +855 -0
  25. package/dist/templates/beacon/content/site.json +363 -0
  26. package/dist/templates/beacon/content/styles.json +17 -0
  27. package/dist/templates/beacon/media/LICENSES.json +163 -0
  28. package/dist/templates/beacon/openspace.json +21 -0
  29. package/dist/templates/beacon/template.json +113 -0
  30. package/dist/templates/commons/content/pages/{members.json → directory.json} +15 -15
  31. package/dist/templates/commons/content/pages/home.json +1 -1
  32. package/dist/templates/commons/content/site.json +2 -2
  33. package/dist/templates/commons/template.json +2 -2
  34. package/dist/templates/darkroom/content/collections/work/_collection.json +13 -0
  35. package/dist/templates/darkroom/content/collections/work/after-hours.mdoc +28 -0
  36. package/dist/templates/darkroom/content/collections/work/dry-season.mdoc +28 -0
  37. package/dist/templates/darkroom/content/collections/work/faces-of-the-guild.mdoc +28 -0
  38. package/dist/templates/darkroom/content/collections/work/two-weddings.mdoc +28 -0
  39. package/dist/templates/darkroom/content/collections/work/white-lines.mdoc +28 -0
  40. package/dist/templates/darkroom/content/pages/about.json +449 -0
  41. package/dist/templates/darkroom/content/pages/contact.json +185 -0
  42. package/dist/templates/darkroom/content/pages/home.json +636 -0
  43. package/dist/templates/darkroom/content/pages/services.json +636 -0
  44. package/dist/templates/darkroom/content/site.json +264 -0
  45. package/dist/templates/darkroom/content/styles.json +17 -0
  46. package/dist/templates/darkroom/media/LICENSES.json +284 -0
  47. package/dist/templates/darkroom/openspace.json +21 -0
  48. package/dist/templates/darkroom/template.json +103 -0
  49. package/dist/templates/encore/content/pages/home.json +86 -0
  50. package/dist/templates/encore/media/LICENSES.json +22 -0
  51. package/dist/templates/field-notes/content/pages/home.json +94 -0
  52. package/dist/templates/fixwell/content/pages/about.json +508 -0
  53. package/dist/templates/fixwell/content/pages/contact.json +321 -0
  54. package/dist/templates/fixwell/content/pages/home.json +888 -0
  55. package/dist/templates/fixwell/content/pages/pricing.json +467 -0
  56. package/dist/templates/fixwell/content/pages/services.json +648 -0
  57. package/dist/templates/fixwell/content/site.json +293 -0
  58. package/dist/templates/fixwell/content/styles.json +17 -0
  59. package/dist/templates/fixwell/media/LICENSES.json +119 -0
  60. package/dist/templates/fixwell/openspace.json +21 -0
  61. package/dist/templates/fixwell/template.json +108 -0
  62. package/dist/templates/folio/content/collections/projects/_collection.json +13 -0
  63. package/dist/templates/folio/content/collections/projects/field-notes-app.mdoc +28 -0
  64. package/dist/templates/folio/content/collections/projects/harbour-health-dashboards.mdoc +28 -0
  65. package/dist/templates/folio/content/collections/projects/open-budget.mdoc +28 -0
  66. package/dist/templates/folio/content/collections/projects/transit-times.mdoc +28 -0
  67. package/dist/templates/folio/content/collections/writing/2026-08-30-designing-for-night-shifts.mdoc +9 -0
  68. package/dist/templates/folio/content/collections/writing/2026-09-20-testing-with-real-data.mdoc +9 -0
  69. package/dist/templates/folio/content/collections/writing/2026-10-12-one-honest-number.mdoc +9 -0
  70. package/dist/templates/folio/content/collections/writing/_collection.json +16 -0
  71. package/dist/templates/folio/content/pages/about.json +366 -0
  72. package/dist/templates/folio/content/pages/contact.json +218 -0
  73. package/dist/templates/folio/content/pages/experience.json +552 -0
  74. package/dist/templates/folio/content/pages/home.json +410 -0
  75. package/dist/templates/folio/content/site.json +186 -0
  76. package/dist/templates/folio/content/styles.json +17 -0
  77. package/dist/templates/folio/media/LICENSES.json +229 -0
  78. package/dist/templates/folio/openspace.json +21 -0
  79. package/dist/templates/folio/template.json +103 -0
  80. package/dist/templates/gather/content/collections/fringe/_collection.json +13 -0
  81. package/dist/templates/gather/content/collections/fringe/library-open-studio.mdoc +14 -0
  82. package/dist/templates/gather/content/collections/fringe/morning-run.mdoc +14 -0
  83. package/dist/templates/gather/content/collections/fringe/plain-language-pub-quiz.mdoc +14 -0
  84. package/dist/templates/gather/content/pages/about.json +435 -0
  85. package/dist/templates/gather/content/pages/contact.json +196 -0
  86. package/dist/templates/gather/content/pages/home.json +527 -0
  87. package/dist/templates/gather/content/pages/programme.json +449 -0
  88. package/dist/templates/gather/content/pages/speakers.json +225 -0
  89. package/dist/templates/gather/content/pages/tickets.json +495 -0
  90. package/dist/templates/gather/content/pages/venue.json +382 -0
  91. package/dist/templates/gather/content/site.json +222 -0
  92. package/dist/templates/gather/content/styles.json +17 -0
  93. package/dist/templates/gather/media/LICENSES.json +185 -0
  94. package/dist/templates/gather/openspace.json +21 -0
  95. package/dist/templates/gather/template.json +118 -0
  96. package/dist/templates/inkwell/content/collections/essays/2026-09-17-notebooks.mdoc +13 -0
  97. package/dist/templates/inkwell/content/collections/essays/2026-10-01-kitchen-radio.mdoc +13 -0
  98. package/dist/templates/inkwell/content/collections/essays/2026-10-15-the-same-mile.mdoc +13 -0
  99. package/dist/templates/inkwell/content/collections/essays/_collection.json +21 -0
  100. package/dist/templates/inkwell/content/pages/about.json +281 -0
  101. package/dist/templates/inkwell/content/pages/books.json +459 -0
  102. package/dist/templates/inkwell/content/pages/contact.json +201 -0
  103. package/dist/templates/inkwell/content/pages/home.json +457 -0
  104. package/dist/templates/inkwell/content/pages/speaking.json +522 -0
  105. package/dist/templates/inkwell/content/site.json +222 -0
  106. package/dist/templates/inkwell/content/styles.json +17 -0
  107. package/dist/templates/inkwell/media/LICENSES.json +119 -0
  108. package/dist/templates/inkwell/openspace.json +21 -0
  109. package/dist/templates/inkwell/template.json +108 -0
  110. package/dist/templates/keystone/content/collections/notes/2026-09-17-hard-conversations.mdoc +11 -0
  111. package/dist/templates/keystone/content/collections/notes/2026-10-01-weekly-rhythm.mdoc +11 -0
  112. package/dist/templates/keystone/content/collections/notes/2026-10-15-the-first-manager.mdoc +11 -0
  113. package/dist/templates/keystone/content/collections/notes/_collection.json +21 -0
  114. package/dist/templates/keystone/content/pages/about.json +371 -0
  115. package/dist/templates/keystone/content/pages/contact.json +207 -0
  116. package/dist/templates/keystone/content/pages/home.json +815 -0
  117. package/dist/templates/keystone/content/pages/results.json +396 -0
  118. package/dist/templates/keystone/content/pages/work-with-me.json +477 -0
  119. package/dist/templates/keystone/content/site.json +224 -0
  120. package/dist/templates/keystone/content/styles.json +17 -0
  121. package/dist/templates/keystone/media/LICENSES.json +75 -0
  122. package/dist/templates/keystone/openspace.json +21 -0
  123. package/dist/templates/keystone/template.json +108 -0
  124. package/dist/templates/ledger/content/pages/home.json +62 -0
  125. package/dist/templates/orbit/content/collections/changelog/2026-09-21-faster-attachments.mdoc +11 -0
  126. package/dist/templates/orbit/content/collections/changelog/2026-10-05-snooze-until-reply.mdoc +11 -0
  127. package/dist/templates/orbit/content/collections/changelog/2026-10-19-help-centre-search.mdoc +13 -0
  128. package/dist/templates/orbit/content/collections/changelog/_collection.json +39 -0
  129. package/dist/templates/orbit/content/pages/about.json +396 -0
  130. package/dist/templates/orbit/content/pages/contact.json +195 -0
  131. package/dist/templates/orbit/content/pages/features.json +603 -0
  132. package/dist/templates/orbit/content/pages/home.json +1273 -0
  133. package/dist/templates/orbit/content/pages/pricing.json +608 -0
  134. package/dist/templates/orbit/content/site.json +368 -0
  135. package/dist/templates/orbit/content/styles.json +17 -0
  136. package/dist/templates/orbit/media/LICENSES.json +141 -0
  137. package/dist/templates/orbit/openspace.json +21 -0
  138. package/dist/templates/orbit/template.json +108 -0
  139. package/package.json +9 -7
  140. package/dist/chunk-3F6TAUAT.js.map +0 -1
  141. package/dist/chunk-R3SYHQ5J.js +0 -17420
  142. package/dist/chunk-R3SYHQ5J.js.map +0 -1
  143. /package/dist/{agents-md-2DTXWUZQ.js.map → agents-md-3W4PIY4N.js.map} +0 -0
@@ -0,0 +1,855 @@
1
+ {
2
+ "$schema": "https://schema.openspace.dev/v1/page.json",
3
+ "id": "pg_zxh6325yyt",
4
+ "title": "Our work",
5
+ "slug": "our-work",
6
+ "seo": {
7
+ "description": "How Shade Street Trust chooses where to plant, how trees are cared for and what twelve school gardens grow. Our programmes and results."
8
+ },
9
+ "sections": [
10
+ {
11
+ "id": "sec_4nfrn2v5nw",
12
+ "preset": "hero/frame-photo@1",
13
+ "label": "Framed photograph",
14
+ "layout": {
15
+ "mode": "grid",
16
+ "rows": {
17
+ "d": 29,
18
+ "m": 28
19
+ },
20
+ "items": {
21
+ "blk_ng7pq6x4vz": {
22
+ "d": {
23
+ "x": 1,
24
+ "y": 1,
25
+ "w": 24,
26
+ "h": 22
27
+ },
28
+ "m": {
29
+ "x": 1,
30
+ "y": 1,
31
+ "w": 8,
32
+ "h": 14
33
+ }
34
+ },
35
+ "blk_9713bd4mzx": {
36
+ "d": {
37
+ "x": 2,
38
+ "y": 15,
39
+ "w": 10,
40
+ "h": 12,
41
+ "z": 2
42
+ },
43
+ "m": {
44
+ "x": 1,
45
+ "y": 12,
46
+ "w": 8,
47
+ "h": 13,
48
+ "z": 2
49
+ }
50
+ },
51
+ "blk_k3sthpdaes": {
52
+ "d": {
53
+ "x": 2,
54
+ "y": 27,
55
+ "w": 10,
56
+ "h": 3
57
+ },
58
+ "m": {
59
+ "x": 1,
60
+ "y": 26,
61
+ "w": 8,
62
+ "h": 3
63
+ }
64
+ }
65
+ },
66
+ "width": "wide"
67
+ },
68
+ "style": {
69
+ "colorTheme": "light",
70
+ "padding": {
71
+ "d": "lg",
72
+ "m": "md"
73
+ }
74
+ },
75
+ "blocks": [
76
+ {
77
+ "id": "blk_ng7pq6x4vz",
78
+ "type": "image",
79
+ "v": 1,
80
+ "fields": {
81
+ "image": {
82
+ "src": "https://images.unsplash.com/photo-1631195414013-85b70ff2c180?w=2880&q=80",
83
+ "alt": "A community garden of raised beds between houses",
84
+ "width": 2880,
85
+ "height": 1922
86
+ },
87
+ "aspect": "original",
88
+ "lightbox": false
89
+ },
90
+ "variant": "default"
91
+ },
92
+ {
93
+ "id": "blk_9713bd4mzx",
94
+ "type": "text",
95
+ "v": 1,
96
+ "fields": {
97
+ "content": {
98
+ "type": "doc",
99
+ "content": [
100
+ {
101
+ "type": "paragraph",
102
+ "attrs": {
103
+ "preset": "eyebrow"
104
+ },
105
+ "content": [
106
+ {
107
+ "type": "text",
108
+ "text": "Our work"
109
+ }
110
+ ]
111
+ },
112
+ {
113
+ "type": "heading",
114
+ "attrs": {
115
+ "level": 1,
116
+ "preset": "h1"
117
+ },
118
+ "content": [
119
+ {
120
+ "type": "text",
121
+ "text": "Planting where the heat is worst"
122
+ }
123
+ ]
124
+ },
125
+ {
126
+ "type": "paragraph",
127
+ "content": [
128
+ {
129
+ "type": "text",
130
+ "text": "We use the city's heat maps to choose blocks, then plant only where residents ask for trees."
131
+ }
132
+ ]
133
+ }
134
+ ]
135
+ }
136
+ },
137
+ "variant": "default",
138
+ "style": {
139
+ "colorTheme": "light",
140
+ "padding": {
141
+ "d": "xl",
142
+ "m": "md"
143
+ },
144
+ "radius": "md"
145
+ }
146
+ },
147
+ {
148
+ "id": "blk_k3sthpdaes",
149
+ "type": "button",
150
+ "v": 1,
151
+ "fields": {
152
+ "label": "Get involved",
153
+ "link": {
154
+ "type": "page",
155
+ "page": "pg_rpwvmy6qxn"
156
+ },
157
+ "role": "primary",
158
+ "secondaryLabel": "Donate",
159
+ "secondaryLink": {
160
+ "type": "page",
161
+ "page": "pg_aa79ztc7zb"
162
+ }
163
+ },
164
+ "variant": "default"
165
+ }
166
+ ]
167
+ },
168
+ {
169
+ "id": "sec_c708dqbpxx",
170
+ "preset": "features/alternating-rows@1",
171
+ "label": "Alternating feature rows",
172
+ "layout": {
173
+ "mode": "grid",
174
+ "rows": {
175
+ "d": 59,
176
+ "m": 71
177
+ },
178
+ "items": {
179
+ "blk_8w9nnfz516": {
180
+ "d": {
181
+ "x": 5,
182
+ "y": 1,
183
+ "w": 16,
184
+ "h": 5
185
+ },
186
+ "m": {
187
+ "x": 1,
188
+ "y": 1,
189
+ "w": 8,
190
+ "h": 6
191
+ }
192
+ },
193
+ "blk_gkys4ntrhj": {
194
+ "d": {
195
+ "x": 1,
196
+ "y": 8,
197
+ "w": 12,
198
+ "h": 16
199
+ },
200
+ "m": {
201
+ "x": 1,
202
+ "y": 8,
203
+ "w": 8,
204
+ "h": 10
205
+ }
206
+ },
207
+ "blk_py9wee8w32": {
208
+ "d": {
209
+ "x": 15,
210
+ "y": 12,
211
+ "w": 10,
212
+ "h": 8
213
+ },
214
+ "m": {
215
+ "x": 1,
216
+ "y": 19,
217
+ "w": 8,
218
+ "h": 9
219
+ }
220
+ },
221
+ "blk_fs6r7rwda5": {
222
+ "d": {
223
+ "x": 13,
224
+ "y": 26,
225
+ "w": 12,
226
+ "h": 16
227
+ },
228
+ "m": {
229
+ "x": 1,
230
+ "y": 30,
231
+ "w": 8,
232
+ "h": 10
233
+ }
234
+ },
235
+ "blk_jdwzmpmjq0": {
236
+ "d": {
237
+ "x": 1,
238
+ "y": 30,
239
+ "w": 10,
240
+ "h": 8
241
+ },
242
+ "m": {
243
+ "x": 1,
244
+ "y": 41,
245
+ "w": 8,
246
+ "h": 9
247
+ }
248
+ },
249
+ "blk_5038gxwgte": {
250
+ "d": {
251
+ "x": 1,
252
+ "y": 44,
253
+ "w": 12,
254
+ "h": 16
255
+ },
256
+ "m": {
257
+ "x": 1,
258
+ "y": 52,
259
+ "w": 8,
260
+ "h": 10
261
+ }
262
+ },
263
+ "blk_qvhvbcs4gg": {
264
+ "d": {
265
+ "x": 15,
266
+ "y": 48,
267
+ "w": 10,
268
+ "h": 8
269
+ },
270
+ "m": {
271
+ "x": 1,
272
+ "y": 63,
273
+ "w": 8,
274
+ "h": 9
275
+ }
276
+ }
277
+ }
278
+ },
279
+ "style": {
280
+ "colorTheme": "light"
281
+ },
282
+ "blocks": [
283
+ {
284
+ "id": "blk_8w9nnfz516",
285
+ "type": "heading",
286
+ "v": 1,
287
+ "fields": {
288
+ "text": "From sapling to shade",
289
+ "level": "h2",
290
+ "size": "auto",
291
+ "eyebrow": "Programmes"
292
+ },
293
+ "variant": "plain",
294
+ "style": {
295
+ "align": {
296
+ "d": "center"
297
+ }
298
+ }
299
+ },
300
+ {
301
+ "id": "blk_gkys4ntrhj",
302
+ "type": "image",
303
+ "v": 1,
304
+ "fields": {
305
+ "image": {
306
+ "src": "https://images.unsplash.com/photo-1544928938-6852c1925194?w=1280&q=80",
307
+ "alt": "Volunteers ready to plant",
308
+ "width": 1280,
309
+ "height": 1707
310
+ },
311
+ "aspect": "original",
312
+ "lightbox": false
313
+ },
314
+ "variant": "default"
315
+ },
316
+ {
317
+ "id": "blk_py9wee8w32",
318
+ "type": "text",
319
+ "v": 1,
320
+ "fields": {
321
+ "content": {
322
+ "type": "doc",
323
+ "content": [
324
+ {
325
+ "type": "paragraph",
326
+ "attrs": {
327
+ "preset": "eyebrow"
328
+ },
329
+ "content": [
330
+ {
331
+ "type": "text",
332
+ "text": "Street trees"
333
+ }
334
+ ]
335
+ },
336
+ {
337
+ "type": "heading",
338
+ "attrs": {
339
+ "level": 3,
340
+ "preset": "h3"
341
+ },
342
+ "content": [
343
+ {
344
+ "type": "text",
345
+ "text": "Residents choose the trees"
346
+ }
347
+ ]
348
+ },
349
+ {
350
+ "type": "paragraph",
351
+ "content": [
352
+ {
353
+ "type": "text",
354
+ "text": "Every block gets a walk-through with a tree officer, and neighbours vote on species that suit the street."
355
+ }
356
+ ]
357
+ }
358
+ ]
359
+ }
360
+ },
361
+ "variant": "default"
362
+ },
363
+ {
364
+ "id": "blk_fs6r7rwda5",
365
+ "type": "image",
366
+ "v": 1,
367
+ "fields": {
368
+ "image": {
369
+ "src": "https://images.unsplash.com/photo-1631195414013-85b70ff2c180?w=1280&q=80",
370
+ "alt": "Flower beds in a school garden",
371
+ "width": 1280,
372
+ "height": 854
373
+ },
374
+ "aspect": "original",
375
+ "lightbox": false
376
+ },
377
+ "variant": "default"
378
+ },
379
+ {
380
+ "id": "blk_jdwzmpmjq0",
381
+ "type": "text",
382
+ "v": 1,
383
+ "fields": {
384
+ "content": {
385
+ "type": "doc",
386
+ "content": [
387
+ {
388
+ "type": "paragraph",
389
+ "attrs": {
390
+ "preset": "eyebrow"
391
+ },
392
+ "content": [
393
+ {
394
+ "type": "text",
395
+ "text": "School gardens"
396
+ }
397
+ ]
398
+ },
399
+ {
400
+ "type": "heading",
401
+ "attrs": {
402
+ "level": 3,
403
+ "preset": "h3"
404
+ },
405
+ "content": [
406
+ {
407
+ "type": "text",
408
+ "text": "Lessons you can eat"
409
+ }
410
+ ]
411
+ },
412
+ {
413
+ "type": "paragraph",
414
+ "content": [
415
+ {
416
+ "type": "text",
417
+ "text": "Weekly garden lessons at twelve schools, ending each term with a harvest lunch for the whole class."
418
+ }
419
+ ]
420
+ }
421
+ ]
422
+ }
423
+ },
424
+ "variant": "default"
425
+ },
426
+ {
427
+ "id": "blk_5038gxwgte",
428
+ "type": "image",
429
+ "v": 1,
430
+ "fields": {
431
+ "image": {
432
+ "src": "https://images.unsplash.com/photo-1524247108137-732e0f642303?w=1280&q=80",
433
+ "alt": "A keeper planting around a young tree",
434
+ "width": 1280,
435
+ "height": 853
436
+ },
437
+ "aspect": "original",
438
+ "lightbox": false
439
+ },
440
+ "variant": "default"
441
+ },
442
+ {
443
+ "id": "blk_qvhvbcs4gg",
444
+ "type": "text",
445
+ "v": 1,
446
+ "fields": {
447
+ "content": {
448
+ "type": "doc",
449
+ "content": [
450
+ {
451
+ "type": "paragraph",
452
+ "attrs": {
453
+ "preset": "eyebrow"
454
+ },
455
+ "content": [
456
+ {
457
+ "type": "text",
458
+ "text": "Keepers"
459
+ }
460
+ ]
461
+ },
462
+ {
463
+ "type": "heading",
464
+ "attrs": {
465
+ "level": 3,
466
+ "preset": "h3"
467
+ },
468
+ "content": [
469
+ {
470
+ "type": "text",
471
+ "text": "Care that lasts"
472
+ }
473
+ ]
474
+ },
475
+ {
476
+ "type": "paragraph",
477
+ "content": [
478
+ {
479
+ "type": "text",
480
+ "text": "Trained keepers water and mulch through the first three summers, when young trees need it most."
481
+ }
482
+ ]
483
+ }
484
+ ]
485
+ }
486
+ },
487
+ "variant": "default"
488
+ }
489
+ ],
490
+ "anchor": "schools"
491
+ },
492
+ {
493
+ "id": "sec_205bzp4p3g",
494
+ "preset": "impact/growth-chart@1",
495
+ "label": "Growth over the years",
496
+ "layout": {
497
+ "mode": "stack",
498
+ "columns": {
499
+ "d": [
500
+ 5,
501
+ 7
502
+ ],
503
+ "m": [
504
+ 12
505
+ ]
506
+ },
507
+ "align": "center",
508
+ "gap": "2xl"
509
+ },
510
+ "style": {
511
+ "colorTheme": "dark"
512
+ },
513
+ "blocks": [
514
+ {
515
+ "id": "blk_eeg15b613j",
516
+ "type": "heading",
517
+ "v": 1,
518
+ "fields": {
519
+ "text": "More trees every year",
520
+ "level": "h2",
521
+ "size": "auto",
522
+ "eyebrow": "Results"
523
+ },
524
+ "column": 0,
525
+ "variant": "plain"
526
+ },
527
+ {
528
+ "id": "blk_zngex1swyg",
529
+ "type": "text",
530
+ "v": 1,
531
+ "fields": {
532
+ "content": {
533
+ "type": "doc",
534
+ "content": [
535
+ {
536
+ "type": "paragraph",
537
+ "content": [
538
+ {
539
+ "type": "text",
540
+ "text": "We count a tree only when it has survived its first summer. Last year, 93 in every 100 did."
541
+ }
542
+ ]
543
+ }
544
+ ]
545
+ }
546
+ },
547
+ "column": 0,
548
+ "variant": "default"
549
+ },
550
+ {
551
+ "id": "blk_c7dqs21tcs",
552
+ "type": "button",
553
+ "v": 1,
554
+ "fields": {
555
+ "label": "About the trust",
556
+ "link": {
557
+ "type": "page",
558
+ "page": "pg_96z8gajatg"
559
+ },
560
+ "role": "primary"
561
+ },
562
+ "column": 0,
563
+ "variant": "default"
564
+ },
565
+ {
566
+ "id": "blk_68abfz3dq6",
567
+ "type": "chart",
568
+ "v": 1,
569
+ "fields": {
570
+ "title": "Trees planted each year",
571
+ "description": "Trees planted and alive after their first summer.",
572
+ "rows": [
573
+ {
574
+ "label": "2021",
575
+ "value": 280
576
+ },
577
+ {
578
+ "label": "2022",
579
+ "value": 410
580
+ },
581
+ {
582
+ "label": "2023",
583
+ "value": 560
584
+ },
585
+ {
586
+ "label": "2024",
587
+ "value": 720
588
+ },
589
+ {
590
+ "label": "2025",
591
+ "value": 940
592
+ }
593
+ ],
594
+ "suffix": "%",
595
+ "showValues": true,
596
+ "showTable": false
597
+ },
598
+ "column": 1,
599
+ "variant": "column",
600
+ "style": {
601
+ "colorTheme": "dark-accent",
602
+ "padding": {
603
+ "d": "lg",
604
+ "m": "md"
605
+ },
606
+ "radius": "md"
607
+ }
608
+ }
609
+ ]
610
+ },
611
+ {
612
+ "id": "sec_9a7dgvfv3p",
613
+ "preset": "gallery/captioned-grid@1",
614
+ "label": "Captioned grid",
615
+ "layout": {
616
+ "mode": "stack",
617
+ "columns": {
618
+ "d": [
619
+ 12
620
+ ]
621
+ },
622
+ "gap": "lg"
623
+ },
624
+ "style": {
625
+ "colorTheme": "light"
626
+ },
627
+ "blocks": [
628
+ {
629
+ "id": "blk_zw1y316t5w",
630
+ "type": "heading",
631
+ "v": 1,
632
+ "fields": {
633
+ "text": "Planting season, 2025",
634
+ "level": "h2",
635
+ "size": "auto",
636
+ "eyebrow": "Photos"
637
+ },
638
+ "variant": "plain"
639
+ },
640
+ {
641
+ "id": "blk_2xrqpj25c4",
642
+ "type": "gallery",
643
+ "v": 1,
644
+ "fields": {
645
+ "images": [
646
+ {
647
+ "image": {
648
+ "src": "https://images.unsplash.com/photo-1544928938-6852c1925194?w=880&q=80",
649
+ "alt": "Two smiling volunteers holding shovels at a tree planting",
650
+ "width": 880,
651
+ "height": 1173
652
+ },
653
+ "caption": "Planting day on Linden Avenue"
654
+ },
655
+ {
656
+ "image": {
657
+ "src": "https://images.unsplash.com/photo-1777150895644-2ca253ee1c93?w=1360&q=80",
658
+ "alt": "Hands cupping a young seedling in dark soil",
659
+ "width": 1360,
660
+ "height": 1088
661
+ },
662
+ "caption": "A London plane, ready to go in"
663
+ },
664
+ {
665
+ "image": {
666
+ "src": "https://images.unsplash.com/photo-1524247108137-732e0f642303?w=1640&q=80",
667
+ "alt": "A volunteer planting flowers in a garden bed",
668
+ "width": 1640,
669
+ "height": 1093
670
+ },
671
+ "caption": "Mulching at Harbour Primary"
672
+ },
673
+ {
674
+ "image": {
675
+ "src": "https://images.unsplash.com/photo-1631195414013-85b70ff2c180?w=1640&q=80",
676
+ "alt": "A community garden of raised flower beds between houses",
677
+ "width": 1640,
678
+ "height": 1095
679
+ },
680
+ "caption": "The garden at Eastport Middle"
681
+ },
682
+ {
683
+ "image": {
684
+ "src": "https://images.unsplash.com/photo-1466692476868-aef1dfb1e735?w=1640&q=80",
685
+ "alt": "Young seedlings sprouting in a dark tray of soil",
686
+ "width": 1640,
687
+ "height": 1093
688
+ },
689
+ "caption": "Seedlings in the nursery"
690
+ },
691
+ {
692
+ "image": {
693
+ "src": "https://images.unsplash.com/photo-1782386963665-b83ce1d6752e?w=1640&q=80",
694
+ "alt": "Gloved hands planting seedlings in a garden bed",
695
+ "width": 1640,
696
+ "height": 1094
697
+ },
698
+ "caption": "Tools for a keeper kit"
699
+ }
700
+ ],
701
+ "aspect": "4:5",
702
+ "columns": "3",
703
+ "lightbox": true,
704
+ "showCaptions": true
705
+ },
706
+ "variant": "grid"
707
+ }
708
+ ]
709
+ },
710
+ {
711
+ "id": "sec_x7tk60qa3w",
712
+ "preset": "cta/photo-split-dark@1",
713
+ "label": "Photo half with action",
714
+ "layout": {
715
+ "mode": "grid",
716
+ "rows": {
717
+ "d": 26,
718
+ "m": 29
719
+ },
720
+ "items": {
721
+ "blk_57a560atf1": {
722
+ "d": {
723
+ "x": 1,
724
+ "y": 1,
725
+ "w": 12,
726
+ "h": 26,
727
+ "bleed": "left"
728
+ },
729
+ "m": {
730
+ "x": 1,
731
+ "y": 1,
732
+ "w": 8,
733
+ "h": 14,
734
+ "bleed": "both"
735
+ }
736
+ },
737
+ "blk_kver1q185j": {
738
+ "d": {
739
+ "x": 14,
740
+ "y": 8,
741
+ "w": 10,
742
+ "h": 10
743
+ },
744
+ "m": {
745
+ "x": 1,
746
+ "y": 16,
747
+ "w": 8,
748
+ "h": 10
749
+ }
750
+ },
751
+ "blk_aj9x1hck6t": {
752
+ "d": {
753
+ "x": 14,
754
+ "y": 19,
755
+ "w": 10,
756
+ "h": 3
757
+ },
758
+ "m": {
759
+ "x": 1,
760
+ "y": 27,
761
+ "w": 8,
762
+ "h": 3
763
+ }
764
+ }
765
+ }
766
+ },
767
+ "style": {
768
+ "colorTheme": "dark-accent",
769
+ "padding": {
770
+ "d": "none",
771
+ "m": "none"
772
+ }
773
+ },
774
+ "blocks": [
775
+ {
776
+ "id": "blk_57a560atf1",
777
+ "type": "image",
778
+ "v": 1,
779
+ "fields": {
780
+ "image": {
781
+ "src": "https://images.unsplash.com/photo-1544928938-6852c1925194?w=1920&q=80",
782
+ "alt": "Volunteers smiling at a planting day",
783
+ "width": 1920,
784
+ "height": 2560
785
+ },
786
+ "aspect": "original",
787
+ "lightbox": false
788
+ },
789
+ "variant": "default"
790
+ },
791
+ {
792
+ "id": "blk_kver1q185j",
793
+ "type": "text",
794
+ "v": 1,
795
+ "fields": {
796
+ "content": {
797
+ "type": "doc",
798
+ "content": [
799
+ {
800
+ "type": "paragraph",
801
+ "attrs": {
802
+ "preset": "eyebrow"
803
+ },
804
+ "content": [
805
+ {
806
+ "type": "text",
807
+ "text": "Volunteer"
808
+ }
809
+ ]
810
+ },
811
+ {
812
+ "type": "heading",
813
+ "attrs": {
814
+ "level": 2,
815
+ "preset": "h2"
816
+ },
817
+ "content": [
818
+ {
819
+ "type": "text",
820
+ "text": "One Saturday morning plants a whole block"
821
+ }
822
+ ]
823
+ },
824
+ {
825
+ "type": "paragraph",
826
+ "content": [
827
+ {
828
+ "type": "text",
829
+ "text": "No experience needed. We bring tools, trees and breakfast."
830
+ }
831
+ ]
832
+ }
833
+ ]
834
+ }
835
+ },
836
+ "variant": "default"
837
+ },
838
+ {
839
+ "id": "blk_aj9x1hck6t",
840
+ "type": "button",
841
+ "v": 1,
842
+ "fields": {
843
+ "label": "Join a planting day",
844
+ "link": {
845
+ "type": "page",
846
+ "page": "pg_rpwvmy6qxn"
847
+ },
848
+ "role": "primary"
849
+ },
850
+ "variant": "default"
851
+ }
852
+ ]
853
+ }
854
+ ]
855
+ }