@omniharmonic/openspace-cli 0.0.0-stage → 0.1.1

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 (205) hide show
  1. package/LICENSE +26 -0
  2. package/README.md +74 -2
  3. package/dist/agents-md-2DTXWUZQ.js +8 -0
  4. package/dist/agents-md-2DTXWUZQ.js.map +1 -0
  5. package/dist/bin.d.ts +1 -0
  6. package/dist/bin.js +11 -0
  7. package/dist/bin.js.map +1 -0
  8. package/dist/chunk-3F6TAUAT.js +41167 -0
  9. package/dist/chunk-3F6TAUAT.js.map +1 -0
  10. package/dist/chunk-LTJEM3DN.js +17161 -0
  11. package/dist/chunk-LTJEM3DN.js.map +1 -0
  12. package/dist/index.d.ts +83 -0
  13. package/dist/index.js +23 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/starter/site/.github/workflows/publish.yml +38 -0
  16. package/dist/starter/site/AGENTS.md +392 -0
  17. package/dist/starter/site/astro.config.mjs +8 -0
  18. package/dist/starter/site/package.json +21 -0
  19. package/dist/starter/site/public/.gitkeep +0 -0
  20. package/dist/starter/site/src/pages/[...slug].astro +10 -0
  21. package/dist/starter/site/tsconfig.json +5 -0
  22. package/dist/starter/variants/cloudflare/.github/openspace/gated-sync.mjs +121 -0
  23. package/dist/starter/variants/cloudflare/.github/workflows/publish.yml +70 -0
  24. package/dist/starter/variants/cloudflare/astro.config.mjs +11 -0
  25. package/dist/starter/variants/cloudflare/package.json +23 -0
  26. package/dist/starter/variants/cloudflare/wrangler.jsonc +13 -0
  27. package/dist/templates/atelier/content/collections/projects/_collection.json +13 -0
  28. package/dist/templates/atelier/content/collections/projects/cordillera.mdoc +32 -0
  29. package/dist/templates/atelier/content/collections/projects/field-studies.mdoc +32 -0
  30. package/dist/templates/atelier/content/collections/projects/salt-and-glass.mdoc +32 -0
  31. package/dist/templates/atelier/content/collections/projects/white-city.mdoc +32 -0
  32. package/dist/templates/atelier/content/pages/about.json +180 -0
  33. package/dist/templates/atelier/content/pages/commissions.json +307 -0
  34. package/dist/templates/atelier/content/pages/contact.json +117 -0
  35. package/dist/templates/atelier/content/pages/home.json +524 -0
  36. package/dist/templates/atelier/content/pages/work.json +332 -0
  37. package/dist/templates/atelier/content/site.json +190 -0
  38. package/dist/templates/atelier/content/styles.json +25 -0
  39. package/dist/templates/atelier/media/LICENSES.json +218 -0
  40. package/dist/templates/atelier/openspace.json +21 -0
  41. package/dist/templates/atelier/template.json +115 -0
  42. package/dist/templates/commons/content/collections/gatherings/_collection.json +13 -0
  43. package/dist/templates/commons/content/collections/gatherings/grant-writing-workshop.mdoc +17 -0
  44. package/dist/templates/commons/content/collections/gatherings/seed-swap.mdoc +16 -0
  45. package/dist/templates/commons/content/collections/gatherings/winter-general-assembly.mdoc +17 -0
  46. package/dist/templates/commons/content/pages/about.json +227 -0
  47. package/dist/templates/commons/content/pages/home.json +540 -0
  48. package/dist/templates/commons/content/pages/join.json +304 -0
  49. package/dist/templates/commons/content/pages/members.json +499 -0
  50. package/dist/templates/commons/content/site.json +306 -0
  51. package/dist/templates/commons/content/styles.json +27 -0
  52. package/dist/templates/commons/media/LICENSES.json +108 -0
  53. package/dist/templates/commons/openspace.json +21 -0
  54. package/dist/templates/commons/template.json +113 -0
  55. package/dist/templates/encore/content/collections/sessions/_collection.json +19 -0
  56. package/dist/templates/encore/content/collections/sessions/session-10-headphones-on.mdoc +16 -0
  57. package/dist/templates/encore/content/collections/sessions/session-11-neon-tide.mdoc +16 -0
  58. package/dist/templates/encore/content/collections/sessions/session-12-slow-static.mdoc +16 -0
  59. package/dist/templates/encore/content/collections/tour/_collection.json +13 -0
  60. package/dist/templates/encore/content/collections/tour/brooklyn-elsewhere.mdoc +18 -0
  61. package/dist/templates/encore/content/collections/tour/chicago-thalia-hall.mdoc +18 -0
  62. package/dist/templates/encore/content/collections/tour/london-electric-ballroom.mdoc +18 -0
  63. package/dist/templates/encore/content/collections/tour/minneapolis-first-avenue.mdoc +18 -0
  64. package/dist/templates/encore/content/collections/tour/toronto-danforth.mdoc +18 -0
  65. package/dist/templates/encore/content/pages/about.json +251 -0
  66. package/dist/templates/encore/content/pages/contact.json +122 -0
  67. package/dist/templates/encore/content/pages/home.json +363 -0
  68. package/dist/templates/encore/content/pages/music.json +297 -0
  69. package/dist/templates/encore/content/site.json +293 -0
  70. package/dist/templates/encore/content/styles.json +17 -0
  71. package/dist/templates/encore/media/LICENSES.json +97 -0
  72. package/dist/templates/encore/openspace.json +21 -0
  73. package/dist/templates/encore/template.json +103 -0
  74. package/dist/templates/field-notes/content/collections/essays/_collection.json +31 -0
  75. package/dist/templates/field-notes/content/collections/essays/a-year-of-apples.mdoc +25 -0
  76. package/dist/templates/field-notes/content/collections/essays/learning-a-field.mdoc +32 -0
  77. package/dist/templates/field-notes/content/collections/essays/small-weather.mdoc +25 -0
  78. package/dist/templates/field-notes/content/collections/essays/the-wall-builders.mdoc +29 -0
  79. package/dist/templates/field-notes/content/pages/about.json +236 -0
  80. package/dist/templates/field-notes/content/pages/contact.json +116 -0
  81. package/dist/templates/field-notes/content/pages/home.json +428 -0
  82. package/dist/templates/field-notes/content/pages/subscribe.json +273 -0
  83. package/dist/templates/field-notes/content/site.json +218 -0
  84. package/dist/templates/field-notes/content/styles.json +27 -0
  85. package/dist/templates/field-notes/media/LICENSES.json +119 -0
  86. package/dist/templates/field-notes/openspace.json +21 -0
  87. package/dist/templates/field-notes/template.json +112 -0
  88. package/dist/templates/harbor/content/collections/events/_collection.json +13 -0
  89. package/dist/templates/harbor/content/collections/events/coat-drive-sorting-day.mdoc +17 -0
  90. package/dist/templates/harbor/content/collections/events/safe-at-home-build-day.mdoc +17 -0
  91. package/dist/templates/harbor/content/collections/events/spring-community-supper.mdoc +17 -0
  92. package/dist/templates/harbor/content/collections/events/winter-coat-giveaway.mdoc +16 -0
  93. package/dist/templates/harbor/content/collections/news/2026-08-28-back-to-school-at-homework-harbor.mdoc +17 -0
  94. package/dist/templates/harbor/content/collections/news/2026-09-15-meet-the-repair-crew.mdoc +21 -0
  95. package/dist/templates/harbor/content/collections/news/2026-10-08-the-2025-annual-report.mdoc +25 -0
  96. package/dist/templates/harbor/content/collections/news/_collection.json +34 -0
  97. package/dist/templates/harbor/content/pages/about.json +366 -0
  98. package/dist/templates/harbor/content/pages/contact.json +233 -0
  99. package/dist/templates/harbor/content/pages/get-involved.json +425 -0
  100. package/dist/templates/harbor/content/pages/home.json +524 -0
  101. package/dist/templates/harbor/content/pages/programs.json +611 -0
  102. package/dist/templates/harbor/content/site.json +377 -0
  103. package/dist/templates/harbor/content/styles.json +25 -0
  104. package/dist/templates/harbor/media/LICENSES.json +141 -0
  105. package/dist/templates/harbor/openspace.json +21 -0
  106. package/dist/templates/harbor/template.json +115 -0
  107. package/dist/templates/hearth/content/pages/about.json +246 -0
  108. package/dist/templates/hearth/content/pages/home.json +937 -0
  109. package/dist/templates/hearth/content/pages/menu.json +396 -0
  110. package/dist/templates/hearth/content/pages/private-dining.json +288 -0
  111. package/dist/templates/hearth/content/pages/visit.json +257 -0
  112. package/dist/templates/hearth/content/site.json +214 -0
  113. package/dist/templates/hearth/content/styles.json +25 -0
  114. package/dist/templates/hearth/media/LICENSES.json +196 -0
  115. package/dist/templates/hearth/openspace.json +21 -0
  116. package/dist/templates/hearth/template.json +116 -0
  117. package/dist/templates/kiln/content/collections/classes/_collection.json +13 -0
  118. package/dist/templates/kiln/content/collections/classes/glaze-day-march.mdoc +17 -0
  119. package/dist/templates/kiln/content/collections/classes/hand-building-february.mdoc +17 -0
  120. package/dist/templates/kiln/content/collections/classes/spring-studio-sale.mdoc +15 -0
  121. package/dist/templates/kiln/content/collections/classes/wheel-weekend-january.mdoc +17 -0
  122. package/dist/templates/kiln/content/collections/shop/_collection.json +14 -0
  123. package/dist/templates/kiln/content/collections/shop/ash-bud-vases.mdoc +18 -0
  124. package/dist/templates/kiln/content/collections/shop/harbor-planter.mdoc +18 -0
  125. package/dist/templates/kiln/content/collections/shop/morning-cup-pair.mdoc +24 -0
  126. package/dist/templates/kiln/content/collections/shop/sea-glass-planter.mdoc +18 -0
  127. package/dist/templates/kiln/content/collections/shop/tide-vase.mdoc +23 -0
  128. package/dist/templates/kiln/content/collections/shop/walnut-step-stool.mdoc +18 -0
  129. package/dist/templates/kiln/content/pages/about.json +344 -0
  130. package/dist/templates/kiln/content/pages/contact.json +232 -0
  131. package/dist/templates/kiln/content/pages/home.json +754 -0
  132. package/dist/templates/kiln/content/pages/workshops.json +352 -0
  133. package/dist/templates/kiln/content/site.json +263 -0
  134. package/dist/templates/kiln/content/styles.json +17 -0
  135. package/dist/templates/kiln/media/LICENSES.json +119 -0
  136. package/dist/templates/kiln/openspace.json +21 -0
  137. package/dist/templates/kiln/template.json +103 -0
  138. package/dist/templates/ledger/content/collections/case-studies/_collection.json +14 -0
  139. package/dist/templates/ledger/content/collections/case-studies/fieldwork-coffee.mdoc +29 -0
  140. package/dist/templates/ledger/content/collections/case-studies/larkspur-foods.mdoc +29 -0
  141. package/dist/templates/ledger/content/collections/case-studies/ostrander-clinics.mdoc +29 -0
  142. package/dist/templates/ledger/content/collections/insights/2026-08-10-one-page-of-numbers.mdoc +12 -0
  143. package/dist/templates/ledger/content/collections/insights/2026-09-07-hiring-your-first-coo.mdoc +17 -0
  144. package/dist/templates/ledger/content/collections/insights/2026-10-05-the-decision-log.mdoc +15 -0
  145. package/dist/templates/ledger/content/collections/insights/_collection.json +21 -0
  146. package/dist/templates/ledger/content/pages/about.json +298 -0
  147. package/dist/templates/ledger/content/pages/contact.json +158 -0
  148. package/dist/templates/ledger/content/pages/home.json +621 -0
  149. package/dist/templates/ledger/content/pages/services.json +639 -0
  150. package/dist/templates/ledger/content/site.json +336 -0
  151. package/dist/templates/ledger/content/styles.json +17 -0
  152. package/dist/templates/ledger/media/LICENSES.json +86 -0
  153. package/dist/templates/ledger/openspace.json +21 -0
  154. package/dist/templates/ledger/template.json +102 -0
  155. package/dist/templates/link/content/pages/home.json +278 -0
  156. package/dist/templates/link/content/site.json +168 -0
  157. package/dist/templates/link/content/styles.json +17 -0
  158. package/dist/templates/link/media/LICENSES.json +97 -0
  159. package/dist/templates/link/openspace.json +21 -0
  160. package/dist/templates/link/template.json +87 -0
  161. package/dist/templates/meadow/content/collections/journal/2026-09-02-meet-daniel.mdoc +20 -0
  162. package/dist/templates/meadow/content/collections/journal/2026-09-28-a-practice-for-dark-mornings.mdoc +24 -0
  163. package/dist/templates/meadow/content/collections/journal/2026-10-12-why-twelve-mats.mdoc +26 -0
  164. package/dist/templates/meadow/content/collections/journal/_collection.json +34 -0
  165. package/dist/templates/meadow/content/collections/workshops/_collection.json +13 -0
  166. package/dist/templates/meadow/content/collections/workshops/breath-and-rest-workshop.mdoc +17 -0
  167. package/dist/templates/meadow/content/collections/workshops/foundations-four-weeks.mdoc +17 -0
  168. package/dist/templates/meadow/content/collections/workshops/manzanita-spring-retreat.mdoc +17 -0
  169. package/dist/templates/meadow/content/collections/workshops/winter-solstice-restorative.mdoc +17 -0
  170. package/dist/templates/meadow/content/pages/about.json +344 -0
  171. package/dist/templates/meadow/content/pages/bodywork.json +330 -0
  172. package/dist/templates/meadow/content/pages/classes.json +820 -0
  173. package/dist/templates/meadow/content/pages/contact.json +240 -0
  174. package/dist/templates/meadow/content/pages/home.json +556 -0
  175. package/dist/templates/meadow/content/site.json +290 -0
  176. package/dist/templates/meadow/content/styles.json +25 -0
  177. package/dist/templates/meadow/media/LICENSES.json +130 -0
  178. package/dist/templates/meadow/openspace.json +21 -0
  179. package/dist/templates/meadow/template.json +116 -0
  180. package/dist/templates/signal/content/collections/changelog/2026-09-08-faster-sms.mdoc +11 -0
  181. package/dist/templates/signal/content/collections/changelog/2026-09-22-postmortem-drafts.mdoc +11 -0
  182. package/dist/templates/signal/content/collections/changelog/2026-10-06-quiet-hours.mdoc +13 -0
  183. package/dist/templates/signal/content/collections/changelog/2026-10-20-status-pages-that-update-themselves.mdoc +17 -0
  184. package/dist/templates/signal/content/collections/changelog/_collection.json +39 -0
  185. package/dist/templates/signal/content/pages/about.json +258 -0
  186. package/dist/templates/signal/content/pages/contact.json +122 -0
  187. package/dist/templates/signal/content/pages/home.json +1062 -0
  188. package/dist/templates/signal/content/pages/pricing.json +460 -0
  189. package/dist/templates/signal/content/site.json +345 -0
  190. package/dist/templates/signal/content/styles.json +17 -0
  191. package/dist/templates/signal/media/LICENSES.json +119 -0
  192. package/dist/templates/signal/openspace.json +21 -0
  193. package/dist/templates/signal/template.json +103 -0
  194. package/dist/templates/vow/content/pages/about.json +314 -0
  195. package/dist/templates/vow/content/pages/home.json +400 -0
  196. package/dist/templates/vow/content/pages/registry.json +207 -0
  197. package/dist/templates/vow/content/pages/rsvp.json +145 -0
  198. package/dist/templates/vow/content/pages/schedule.json +281 -0
  199. package/dist/templates/vow/content/pages/travel.json +326 -0
  200. package/dist/templates/vow/content/site.json +200 -0
  201. package/dist/templates/vow/content/styles.json +17 -0
  202. package/dist/templates/vow/media/LICENSES.json +130 -0
  203. package/dist/templates/vow/openspace.json +21 -0
  204. package/dist/templates/vow/template.json +113 -0
  205. package/package.json +71 -3
@@ -0,0 +1,524 @@
1
+ {
2
+ "$schema": "https://schema.openspace.dev/v1/page.json",
3
+ "id": "pg_z815j3m0n5",
4
+ "title": "Home",
5
+ "slug": "",
6
+ "seo": {
7
+ "description": "Elias Varga photographs landscapes and architecture in quiet light. Portfolio, commissions and limited-edition prints from Denver."
8
+ },
9
+ "header": {
10
+ "transparentOnHero": false
11
+ },
12
+ "sections": [
13
+ {
14
+ "id": "sec_1rywrmfydj",
15
+ "preset": "gallery/slideshow@1",
16
+ "label": "Full-width slideshow",
17
+ "layout": {
18
+ "mode": "grid",
19
+ "rows": {
20
+ "d": 30,
21
+ "m": 12
22
+ },
23
+ "items": {
24
+ "blk_apys7th18w": {
25
+ "d": {
26
+ "x": 1,
27
+ "y": 1,
28
+ "w": 24,
29
+ "h": 30,
30
+ "bleed": "both"
31
+ },
32
+ "m": {
33
+ "x": 1,
34
+ "y": 1,
35
+ "w": 8,
36
+ "h": 12,
37
+ "bleed": "both"
38
+ }
39
+ }
40
+ },
41
+ "width": "full"
42
+ },
43
+ "style": {
44
+ "colorTheme": "dark",
45
+ "padding": {
46
+ "d": "none",
47
+ "m": "none"
48
+ }
49
+ },
50
+ "blocks": [
51
+ {
52
+ "id": "blk_apys7th18w",
53
+ "type": "gallery",
54
+ "v": 1,
55
+ "fields": {
56
+ "images": [
57
+ {
58
+ "image": {
59
+ "src": "https://images.unsplash.com/photo-1783611066016-59e16b0ac1c8?w=2880&q=80",
60
+ "alt": "Snowy peaks reflected in a still mountain lake, from Cordillera",
61
+ "width": 2880,
62
+ "height": 1920
63
+ }
64
+ },
65
+ {
66
+ "image": {
67
+ "src": "https://images.unsplash.com/photo-1487958449943-2429e8be8625?w=2880&q=80",
68
+ "alt": "A white angular building against a clear sky, from White City",
69
+ "width": 2880,
70
+ "height": 1920
71
+ }
72
+ },
73
+ {
74
+ "image": {
75
+ "src": "https://images.unsplash.com/photo-1505142468610-359e7d316be0?w=2880&q=80",
76
+ "alt": "Turquoise surf meeting a sandy shore from above, from Salt & Glass",
77
+ "width": 2880,
78
+ "height": 5126
79
+ }
80
+ },
81
+ {
82
+ "image": {
83
+ "src": "https://images.unsplash.com/photo-1465146344425-f00d5f5c8f07?w=2880&q=80",
84
+ "alt": "Wild poppies scattered through a summer meadow, from Field Studies",
85
+ "width": 2880,
86
+ "height": 1908
87
+ }
88
+ },
89
+ {
90
+ "image": {
91
+ "src": "https://images.unsplash.com/photo-1506744038136-46273834b3fb?w=2880&q=80",
92
+ "alt": "A misty river valley with pines at dawn, from Cordillera",
93
+ "width": 2880,
94
+ "height": 1922
95
+ }
96
+ }
97
+ ],
98
+ "aspect": "3:2",
99
+ "columns": "3",
100
+ "lightbox": true,
101
+ "showCaptions": false
102
+ },
103
+ "variant": "slideshow"
104
+ }
105
+ ]
106
+ },
107
+ {
108
+ "id": "sec_9qyzrxq6zv",
109
+ "preset": "hero/big-type@1",
110
+ "label": "Big type with details",
111
+ "layout": {
112
+ "mode": "stack",
113
+ "columns": {
114
+ "d": [
115
+ 7,
116
+ 5
117
+ ],
118
+ "m": [
119
+ 12
120
+ ]
121
+ },
122
+ "align": "end",
123
+ "gap": "xl"
124
+ },
125
+ "style": {
126
+ "colorTheme": "light",
127
+ "padding": {
128
+ "d": "2xl",
129
+ "m": "xl"
130
+ }
131
+ },
132
+ "blocks": [
133
+ {
134
+ "id": "blk_z0s806bawj",
135
+ "type": "heading",
136
+ "v": 1,
137
+ "fields": {
138
+ "text": "Land, light and the buildings between",
139
+ "level": "h1",
140
+ "size": "display",
141
+ "eyebrow": "Elias Varga · Photographer"
142
+ },
143
+ "column": 0,
144
+ "variant": "plain"
145
+ },
146
+ {
147
+ "id": "blk_07k8pg3tk0",
148
+ "type": "text",
149
+ "v": 1,
150
+ "fields": {
151
+ "content": {
152
+ "type": "doc",
153
+ "content": [
154
+ {
155
+ "type": "paragraph",
156
+ "attrs": {
157
+ "preset": "lead"
158
+ },
159
+ "content": [
160
+ {
161
+ "type": "text",
162
+ "text": "Landscape and architecture photography for publishers, architects and hotels, made slowly and printed by hand in my Denver studio."
163
+ }
164
+ ]
165
+ }
166
+ ]
167
+ }
168
+ },
169
+ "column": 1,
170
+ "variant": "default"
171
+ },
172
+ {
173
+ "id": "blk_11keyzw0d7",
174
+ "type": "button",
175
+ "v": 1,
176
+ "fields": {
177
+ "label": "See the work",
178
+ "link": {
179
+ "type": "page",
180
+ "page": "pg_excq64amzm"
181
+ },
182
+ "role": "primary",
183
+ "secondaryLabel": "Commission a series",
184
+ "secondaryLink": {
185
+ "type": "page",
186
+ "page": "pg_k1vx320q55"
187
+ }
188
+ },
189
+ "column": 1,
190
+ "variant": "default"
191
+ }
192
+ ]
193
+ },
194
+ {
195
+ "id": "sec_cfa1g0bzp7",
196
+ "preset": "gallery/project-cards@1",
197
+ "label": "Project index",
198
+ "layout": {
199
+ "mode": "stack",
200
+ "columns": {
201
+ "d": [
202
+ 12
203
+ ]
204
+ },
205
+ "gap": "xl"
206
+ },
207
+ "style": {
208
+ "colorTheme": "light"
209
+ },
210
+ "blocks": [
211
+ {
212
+ "id": "blk_36c7zr685e",
213
+ "type": "heading",
214
+ "v": 1,
215
+ "fields": {
216
+ "text": "Selected projects",
217
+ "level": "h2",
218
+ "size": "auto",
219
+ "eyebrow": "Index"
220
+ },
221
+ "variant": "underline"
222
+ },
223
+ {
224
+ "id": "blk_d7pjqa6d70",
225
+ "type": "columns",
226
+ "v": 1,
227
+ "fields": {
228
+ "items": [
229
+ {
230
+ "image": {
231
+ "src": "https://images.unsplash.com/photo-1783611066016-59e16b0ac1c8?w=2320&q=80",
232
+ "alt": "Cordillera: Three winters above the treeline in the San Juan Mountains, waiting for the light to go flat.",
233
+ "width": 2320,
234
+ "height": 1547
235
+ },
236
+ "heading": "Cordillera",
237
+ "body": {
238
+ "type": "doc",
239
+ "content": [
240
+ {
241
+ "type": "paragraph",
242
+ "content": [
243
+ {
244
+ "type": "text",
245
+ "text": "Personal project, 2026."
246
+ }
247
+ ]
248
+ }
249
+ ]
250
+ },
251
+ "link": {
252
+ "type": "item",
253
+ "collection": "projects",
254
+ "slug": "cordillera"
255
+ },
256
+ "linkLabel": "View project"
257
+ },
258
+ {
259
+ "image": {
260
+ "src": "https://images.unsplash.com/photo-1487958449943-2429e8be8625?w=2320&q=80",
261
+ "alt": "White City: Modernist facades in noon sun",
262
+ "width": 2320,
263
+ "height": 1547
264
+ },
265
+ "heading": "White City",
266
+ "body": {
267
+ "type": "doc",
268
+ "content": [
269
+ {
270
+ "type": "paragraph",
271
+ "content": [
272
+ {
273
+ "type": "text",
274
+ "text": "Monograph, Halden Press, 2025."
275
+ }
276
+ ]
277
+ }
278
+ ]
279
+ },
280
+ "link": {
281
+ "type": "item",
282
+ "collection": "projects",
283
+ "slug": "white-city"
284
+ },
285
+ "linkLabel": "View project"
286
+ },
287
+ {
288
+ "image": {
289
+ "src": "https://images.unsplash.com/photo-1505142468610-359e7d316be0?w=1240&q=80",
290
+ "alt": "Salt & Glass: The Pacific coast from above and at eye level, for a hotel group's new coastal lodges.",
291
+ "width": 1240,
292
+ "height": 2207
293
+ },
294
+ "heading": "Salt & Glass",
295
+ "body": {
296
+ "type": "doc",
297
+ "content": [
298
+ {
299
+ "type": "paragraph",
300
+ "content": [
301
+ {
302
+ "type": "text",
303
+ "text": "Commission, Tidewater Hotels, 2025."
304
+ }
305
+ ]
306
+ }
307
+ ]
308
+ },
309
+ "link": {
310
+ "type": "item",
311
+ "collection": "projects",
312
+ "slug": "salt-and-glass"
313
+ },
314
+ "linkLabel": "View project"
315
+ },
316
+ {
317
+ "image": {
318
+ "src": "https://images.unsplash.com/photo-1465146344425-f00d5f5c8f07?w=2320&q=80",
319
+ "alt": "Field Studies: Meadows, back roads and wildflowers from a summer spent driving the high plains.",
320
+ "width": 2320,
321
+ "height": 1537
322
+ },
323
+ "heading": "Field Studies",
324
+ "body": {
325
+ "type": "doc",
326
+ "content": [
327
+ {
328
+ "type": "paragraph",
329
+ "content": [
330
+ {
331
+ "type": "text",
332
+ "text": "Exhibition, Lowry Gallery, 2024."
333
+ }
334
+ ]
335
+ }
336
+ ]
337
+ },
338
+ "link": {
339
+ "type": "item",
340
+ "collection": "projects",
341
+ "slug": "field-studies"
342
+ },
343
+ "linkLabel": "View project"
344
+ }
345
+ ],
346
+ "columns": "2",
347
+ "aspect": "4:5"
348
+ },
349
+ "variant": "plain"
350
+ }
351
+ ]
352
+ },
353
+ {
354
+ "id": "sec_9yntsr0106",
355
+ "preset": "testimonials/large-single@1",
356
+ "label": "One big testimonial",
357
+ "layout": {
358
+ "mode": "stack",
359
+ "columns": {
360
+ "d": [
361
+ 12
362
+ ]
363
+ },
364
+ "width": "narrow"
365
+ },
366
+ "style": {
367
+ "colorTheme": "dark",
368
+ "padding": {
369
+ "d": "xl",
370
+ "m": "lg"
371
+ }
372
+ },
373
+ "blocks": [
374
+ {
375
+ "id": "blk_ncvsq2kw02",
376
+ "type": "testimonial",
377
+ "v": 1,
378
+ "fields": {
379
+ "quote": {
380
+ "type": "doc",
381
+ "content": [
382
+ {
383
+ "type": "paragraph",
384
+ "content": [
385
+ {
386
+ "type": "text",
387
+ "text": "Elias spent four days on a building we thought we knew, and found angles none of us had noticed in ten years. The book sold out in a month."
388
+ }
389
+ ]
390
+ }
391
+ ]
392
+ },
393
+ "name": "Ingrid Halden",
394
+ "role": "Publisher, Halden Press",
395
+ "photo": {
396
+ "src": "https://images.unsplash.com/photo-1573496359142-b8d87734a5a2?w=320&q=80",
397
+ "alt": "Portrait of Ingrid Halden",
398
+ "width": 320,
399
+ "height": 479
400
+ }
401
+ },
402
+ "variant": "large",
403
+ "style": {
404
+ "align": {
405
+ "d": "center"
406
+ }
407
+ }
408
+ }
409
+ ]
410
+ },
411
+ {
412
+ "id": "sec_c9v6yj1r5p",
413
+ "preset": "logos/row@1",
414
+ "label": "Logo row",
415
+ "layout": {
416
+ "mode": "stack",
417
+ "columns": {
418
+ "d": [
419
+ 12
420
+ ]
421
+ }
422
+ },
423
+ "style": {
424
+ "colorTheme": "light",
425
+ "padding": {
426
+ "d": "md",
427
+ "m": "md"
428
+ }
429
+ },
430
+ "blocks": [
431
+ {
432
+ "id": "blk_mv50r59csb",
433
+ "type": "logo-strip",
434
+ "v": 1,
435
+ "fields": {
436
+ "label": "Published and exhibited by",
437
+ "logos": [
438
+ {
439
+ "name": "Halden Press"
440
+ },
441
+ {
442
+ "name": "Lowry Gallery"
443
+ },
444
+ {
445
+ "name": "Field & Form"
446
+ },
447
+ {
448
+ "name": "The Modern House Review"
449
+ },
450
+ {
451
+ "name": "Tidewater Hotels"
452
+ }
453
+ ],
454
+ "monochrome": true
455
+ },
456
+ "variant": "row"
457
+ }
458
+ ]
459
+ },
460
+ {
461
+ "id": "sec_2fkf0qtv51",
462
+ "preset": "cta/split@1",
463
+ "label": "Headline with action on the right",
464
+ "layout": {
465
+ "mode": "stack",
466
+ "columns": {
467
+ "d": [
468
+ 8,
469
+ 4
470
+ ],
471
+ "m": [
472
+ 12
473
+ ]
474
+ },
475
+ "align": "center",
476
+ "gap": "xl"
477
+ },
478
+ "style": {
479
+ "colorTheme": "dark",
480
+ "padding": {
481
+ "d": "lg",
482
+ "m": "lg"
483
+ }
484
+ },
485
+ "blocks": [
486
+ {
487
+ "id": "blk_qrs39csjwg",
488
+ "type": "heading",
489
+ "v": 1,
490
+ "fields": {
491
+ "text": "Booking spring 2027 commissions now",
492
+ "level": "h2",
493
+ "size": "auto",
494
+ "eyebrow": "Commissions"
495
+ },
496
+ "column": 0,
497
+ "variant": "plain"
498
+ },
499
+ {
500
+ "id": "blk_jxzmk44p8t",
501
+ "type": "button",
502
+ "v": 1,
503
+ "fields": {
504
+ "label": "Start a conversation",
505
+ "link": {
506
+ "type": "page",
507
+ "page": "pg_h72a8wvyfr"
508
+ },
509
+ "role": "primary",
510
+ "note": "Architecture, hospitality and editorial."
511
+ },
512
+ "column": 1,
513
+ "variant": "default",
514
+ "style": {
515
+ "align": {
516
+ "d": "end",
517
+ "m": "start"
518
+ }
519
+ }
520
+ }
521
+ ]
522
+ }
523
+ ]
524
+ }