@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,257 @@
1
+ {
2
+ "$schema": "https://schema.openspace.dev/v1/page.json",
3
+ "id": "pg_03vfj29ssd",
4
+ "title": "Visit & reservations",
5
+ "slug": "visit",
6
+ "seo": {
7
+ "description": "Book a table at Ember & Olive, 214 Atwells Avenue, Providence. Opening hours, directions, parking and reservation requests."
8
+ },
9
+ "sections": [
10
+ {
11
+ "id": "sec_m9sjxgrveg",
12
+ "preset": "contact/location@1",
13
+ "label": "Map, hours and address",
14
+ "layout": {
15
+ "mode": "stack",
16
+ "columns": {
17
+ "d": [
18
+ 7,
19
+ 5
20
+ ],
21
+ "m": [
22
+ 12
23
+ ]
24
+ },
25
+ "gap": "2xl"
26
+ },
27
+ "style": {
28
+ "colorTheme": "light-accent"
29
+ },
30
+ "blocks": [
31
+ {
32
+ "id": "blk_0ckekvkvez",
33
+ "type": "map",
34
+ "v": 1,
35
+ "fields": {
36
+ "name": "Ember & Olive",
37
+ "address": "214 Atwells Avenue, Providence, RI 02903",
38
+ "latitude": 41.8205,
39
+ "longitude": -71.4245,
40
+ "zoom": 15,
41
+ "linkLabel": "Open in Maps",
42
+ "aspect": "4:3"
43
+ },
44
+ "column": 0,
45
+ "variant": "plain"
46
+ },
47
+ {
48
+ "id": "blk_9rxd2425v1",
49
+ "type": "heading",
50
+ "v": 1,
51
+ "fields": {
52
+ "text": "Find us on Federal Hill",
53
+ "level": "h1",
54
+ "size": "auto",
55
+ "eyebrow": "Visit"
56
+ },
57
+ "column": 1,
58
+ "variant": "plain"
59
+ },
60
+ {
61
+ "id": "blk_dh09g747qc",
62
+ "type": "hours",
63
+ "v": 1,
64
+ "fields": {
65
+ "heading": "Opening hours",
66
+ "headingLevel": "h2",
67
+ "rows": [
68
+ {
69
+ "day": "mon",
70
+ "closed": true
71
+ },
72
+ {
73
+ "day": "tue",
74
+ "opens": "17:00",
75
+ "closes": "22:00",
76
+ "closed": false
77
+ },
78
+ {
79
+ "day": "wed",
80
+ "opens": "17:00",
81
+ "closes": "22:00",
82
+ "closed": false
83
+ },
84
+ {
85
+ "day": "thu",
86
+ "opens": "17:00",
87
+ "closes": "22:00",
88
+ "closed": false
89
+ },
90
+ {
91
+ "day": "fri",
92
+ "opens": "17:00",
93
+ "closes": "23:00",
94
+ "closed": false
95
+ },
96
+ {
97
+ "day": "sat",
98
+ "opens": "12:00",
99
+ "closes": "23:00",
100
+ "closed": false
101
+ },
102
+ {
103
+ "day": "sun",
104
+ "opens": "12:00",
105
+ "closes": "21:00",
106
+ "closed": false
107
+ }
108
+ ],
109
+ "note": "Valet parking on Friday and Saturday evenings; metered parking on Atwells Avenue."
110
+ },
111
+ "column": 1,
112
+ "variant": "compact"
113
+ },
114
+ {
115
+ "id": "blk_g2m69p81za",
116
+ "type": "contact-info",
117
+ "v": 1,
118
+ "fields": {
119
+ "headingLevel": "h2",
120
+ "address": "214 Atwells Avenue\nProvidence, RI 02903",
121
+ "phone": "+1 (401) 555-0158",
122
+ "email": "ciao@emberandolive.example",
123
+ "directions": true
124
+ },
125
+ "column": 1,
126
+ "variant": "list"
127
+ }
128
+ ]
129
+ },
130
+ {
131
+ "id": "sec_qzzg29j65p",
132
+ "preset": "contact/booking-request@1",
133
+ "label": "Booking request form",
134
+ "layout": {
135
+ "mode": "stack",
136
+ "columns": {
137
+ "d": [
138
+ 12
139
+ ]
140
+ },
141
+ "width": "narrow",
142
+ "gap": "lg"
143
+ },
144
+ "style": {
145
+ "colorTheme": "light-accent"
146
+ },
147
+ "blocks": [
148
+ {
149
+ "id": "blk_ryymj2n43p",
150
+ "type": "heading",
151
+ "v": 1,
152
+ "fields": {
153
+ "text": "Reserve a table",
154
+ "level": "h2",
155
+ "size": "auto",
156
+ "eyebrow": "Reservations",
157
+ "subheading": "Book up to 30 days ahead. We keep the bar and counter seats for walk-ins every night."
158
+ },
159
+ "variant": "plain",
160
+ "style": {
161
+ "align": {
162
+ "d": "center"
163
+ }
164
+ }
165
+ },
166
+ {
167
+ "id": "blk_v33kzh71dz",
168
+ "type": "form",
169
+ "v": 1,
170
+ "fields": {
171
+ "form": {
172
+ "id": "frm_95rm4ga7db",
173
+ "name": "Reservation request",
174
+ "fields": [
175
+ {
176
+ "type": "text",
177
+ "name": "name",
178
+ "label": "Name",
179
+ "required": true,
180
+ "width": "half"
181
+ },
182
+ {
183
+ "type": "email",
184
+ "name": "email",
185
+ "label": "Email",
186
+ "required": true,
187
+ "width": "half"
188
+ },
189
+ {
190
+ "type": "date",
191
+ "name": "date",
192
+ "label": "Date",
193
+ "required": true,
194
+ "width": "half"
195
+ },
196
+ {
197
+ "type": "select",
198
+ "name": "time",
199
+ "label": "Time",
200
+ "required": true,
201
+ "width": "half",
202
+ "options": [
203
+ "5:00",
204
+ "5:30",
205
+ "6:00",
206
+ "6:30",
207
+ "7:00",
208
+ "7:30",
209
+ "8:00",
210
+ "8:30",
211
+ "9:00"
212
+ ]
213
+ },
214
+ {
215
+ "type": "select",
216
+ "name": "guests",
217
+ "label": "Guests",
218
+ "required": true,
219
+ "width": "half",
220
+ "options": [
221
+ "1",
222
+ "2",
223
+ "3",
224
+ "4",
225
+ "5",
226
+ "6",
227
+ "7 or more"
228
+ ]
229
+ },
230
+ {
231
+ "type": "phone",
232
+ "name": "phone",
233
+ "label": "Phone",
234
+ "width": "half"
235
+ },
236
+ {
237
+ "type": "textarea",
238
+ "name": "notes",
239
+ "label": "Allergies or occasions",
240
+ "maxLength": 1000
241
+ }
242
+ ],
243
+ "submitLabel": "Request a table",
244
+ "success": {
245
+ "type": "message",
246
+ "message": "Grazie! We'll confirm your table by email within a few hours."
247
+ },
248
+ "notifyOwner": true
249
+ }
250
+ },
251
+ "variant": "card"
252
+ }
253
+ ],
254
+ "anchor": "reserve"
255
+ }
256
+ ]
257
+ }
@@ -0,0 +1,214 @@
1
+ {
2
+ "$schema": "https://schema.openspace.dev/v1/site.json",
3
+ "title": "Ember & Olive",
4
+ "tagline": "Wood-fired cooking, made to share.",
5
+ "nav": [
6
+ {
7
+ "type": "page",
8
+ "page": "pg_fs2y203dqx",
9
+ "label": "Menu"
10
+ },
11
+ {
12
+ "type": "page",
13
+ "page": "pg_q3e0j2pp60",
14
+ "label": "Private dining"
15
+ },
16
+ {
17
+ "type": "page",
18
+ "page": "pg_86kv6qr4yt",
19
+ "label": "Our story"
20
+ },
21
+ {
22
+ "type": "page",
23
+ "page": "pg_03vfj29ssd",
24
+ "label": "Visit"
25
+ },
26
+ {
27
+ "type": "button",
28
+ "label": "Reserve",
29
+ "link": {
30
+ "type": "page",
31
+ "page": "pg_03vfj29ssd",
32
+ "anchor": "reserve"
33
+ },
34
+ "style": "primary"
35
+ }
36
+ ],
37
+ "header": {
38
+ "variant": "classic-center",
39
+ "sticky": true,
40
+ "transparentOnHero": false,
41
+ "mobileMenu": "dropdown",
42
+ "colorTheme": "light"
43
+ },
44
+ "footer": {
45
+ "id": "sec_5rw9wsxnc1",
46
+ "preset": "footer/visit@1",
47
+ "label": "Footer with hours and address",
48
+ "layout": {
49
+ "mode": "stack",
50
+ "columns": {
51
+ "d": [
52
+ 4,
53
+ 4,
54
+ 4
55
+ ],
56
+ "m": [
57
+ 12
58
+ ]
59
+ },
60
+ "gap": "xl"
61
+ },
62
+ "style": {
63
+ "colorTheme": "dark",
64
+ "padding": {
65
+ "d": "xl",
66
+ "m": "lg"
67
+ }
68
+ },
69
+ "blocks": [
70
+ {
71
+ "id": "blk_rzbrxyfztm",
72
+ "type": "text",
73
+ "v": 1,
74
+ "fields": {
75
+ "content": {
76
+ "type": "doc",
77
+ "content": [
78
+ {
79
+ "type": "paragraph",
80
+ "attrs": {
81
+ "preset": "lead"
82
+ },
83
+ "content": [
84
+ {
85
+ "type": "text",
86
+ "text": "Ember & Olive"
87
+ }
88
+ ]
89
+ },
90
+ {
91
+ "type": "paragraph",
92
+ "attrs": {
93
+ "preset": "small"
94
+ },
95
+ "content": [
96
+ {
97
+ "type": "text",
98
+ "text": "Wood-fired Italian cooking on Federal Hill. Dinner Tuesday to Sunday, lunch at weekends."
99
+ }
100
+ ]
101
+ }
102
+ ]
103
+ }
104
+ },
105
+ "column": 0,
106
+ "variant": "default"
107
+ },
108
+ {
109
+ "id": "blk_9bfsn8bg2y",
110
+ "type": "social-links",
111
+ "v": 1,
112
+ "fields": {
113
+ "source": "site",
114
+ "profiles": []
115
+ },
116
+ "column": 0,
117
+ "variant": "icons"
118
+ },
119
+ {
120
+ "id": "blk_0c89mbt818",
121
+ "type": "contact-info",
122
+ "v": 1,
123
+ "fields": {
124
+ "heading": "Find us",
125
+ "headingLevel": "h2",
126
+ "address": "214 Atwells Avenue\nProvidence, RI 02903",
127
+ "phone": "+1 (401) 555-0158",
128
+ "email": "ciao@emberandolive.example",
129
+ "directions": true
130
+ },
131
+ "column": 1,
132
+ "variant": "list"
133
+ },
134
+ {
135
+ "id": "blk_ve974e80mx",
136
+ "type": "hours",
137
+ "v": 1,
138
+ "fields": {
139
+ "heading": "Hours",
140
+ "headingLevel": "h2",
141
+ "rows": [
142
+ {
143
+ "day": "mon",
144
+ "closed": true
145
+ },
146
+ {
147
+ "day": "tue",
148
+ "opens": "17:00",
149
+ "closes": "22:00",
150
+ "closed": false
151
+ },
152
+ {
153
+ "day": "wed",
154
+ "opens": "17:00",
155
+ "closes": "22:00",
156
+ "closed": false
157
+ },
158
+ {
159
+ "day": "thu",
160
+ "opens": "17:00",
161
+ "closes": "22:00",
162
+ "closed": false
163
+ },
164
+ {
165
+ "day": "fri",
166
+ "opens": "17:00",
167
+ "closes": "23:00",
168
+ "closed": false
169
+ },
170
+ {
171
+ "day": "sat",
172
+ "opens": "12:00",
173
+ "closes": "23:00",
174
+ "closed": false
175
+ },
176
+ {
177
+ "day": "sun",
178
+ "opens": "12:00",
179
+ "closes": "21:00",
180
+ "closed": false
181
+ }
182
+ ]
183
+ },
184
+ "column": 2,
185
+ "variant": "compact"
186
+ }
187
+ ]
188
+ },
189
+ "social": [
190
+ {
191
+ "network": "instagram",
192
+ "url": "https://instagram.com/emberandolive.example"
193
+ },
194
+ {
195
+ "network": "tripadvisor",
196
+ "url": "https://tripadvisor.com/emberandolive-example"
197
+ },
198
+ {
199
+ "network": "email",
200
+ "url": "mailto:ciao@emberandolive.example"
201
+ }
202
+ ],
203
+ "seo": {
204
+ "titleTemplate": "%s · Ember & Olive, Providence",
205
+ "description": "Wood-fired Italian cooking on Federal Hill, Providence.",
206
+ "image": "https://images.unsplash.com/photo-1513104890138-7c749659a591?w=1200&q=80"
207
+ },
208
+ "locale": "en-US",
209
+ "integrations": {
210
+ "analytics": true,
211
+ "bookingUrl": null,
212
+ "stripeConnected": false
213
+ }
214
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "$schema": "https://schema.openspace.dev/v1/styles.json",
3
+ "choices": {
4
+ "palette": {
5
+ "brand": "oklch(0.6 0.2 30)",
6
+ "neutral": "warm",
7
+ "contrast": "standard",
8
+ "source": "curated"
9
+ },
10
+ "pairing": "young-serif-work-sans",
11
+ "density": "comfortable",
12
+ "shape": "soft",
13
+ "buttons": "pill-solid",
14
+ "motion": "subtle",
15
+ "imageTreatment": "rounded"
16
+ },
17
+ "overrides": {
18
+ "color": {
19
+ "accent": {
20
+ "$value": "oklch(0.5 0.1 115)",
21
+ "$type": "color"
22
+ }
23
+ }
24
+ }
25
+ }
@@ -0,0 +1,196 @@
1
+ {
2
+ "$comment": "Licenses for the demo media in the Hearth template. Replace the demo photos with your own; this file can be deleted once none of them are used.",
3
+ "design": {
4
+ "license": "CC-BY-4.0",
5
+ "licenseUrl": "https://creativecommons.org/licenses/by/4.0/"
6
+ },
7
+ "media": [
8
+ {
9
+ "kind": "image",
10
+ "src": "https://images.unsplash.com/photo-1414235077428-338989a2e8c0",
11
+ "title": "A plated dish on a candlelit dinner table set for friends",
12
+ "author": "Jay Wennington",
13
+ "authorUrl": "https://unsplash.com/@jaywennington",
14
+ "source": "Unsplash",
15
+ "sourceUrl": "https://unsplash.com/photos/dish-on-white-ceramic-plate-N_Y88TWmGwA",
16
+ "license": "Unsplash License",
17
+ "licenseUrl": "https://unsplash.com/license"
18
+ },
19
+ {
20
+ "kind": "image",
21
+ "src": "https://images.unsplash.com/photo-1494790108377-be9c29b29330",
22
+ "title": "Portrait of a woman in a red sweater, laughing",
23
+ "author": "Michael Dam",
24
+ "authorUrl": "https://unsplash.com/@michaeldam",
25
+ "source": "Unsplash",
26
+ "sourceUrl": "https://unsplash.com/photos/closeup-photography-of-woman-smiling-mEZ3PoFGs_k",
27
+ "license": "Unsplash License",
28
+ "licenseUrl": "https://unsplash.com/license"
29
+ },
30
+ {
31
+ "kind": "image",
32
+ "src": "https://images.unsplash.com/photo-1500648767791-00dcc994a43e",
33
+ "title": "Portrait of a man in a grey sweater, smiling softly",
34
+ "author": "Jurica Koletić",
35
+ "authorUrl": "https://unsplash.com/@juricakoletic",
36
+ "source": "Unsplash",
37
+ "sourceUrl": "https://unsplash.com/photos/man-wearing-henley-top-portrait-7YVZYZeITc8",
38
+ "license": "Unsplash License",
39
+ "licenseUrl": "https://unsplash.com/license"
40
+ },
41
+ {
42
+ "kind": "image",
43
+ "src": "https://images.unsplash.com/photo-1504674900247-0877df9cc836",
44
+ "title": "Seared steak, herbs and dipping sauces shared across the table",
45
+ "author": "Lily Banse",
46
+ "authorUrl": "https://unsplash.com/@lvnatikk",
47
+ "source": "Unsplash",
48
+ "sourceUrl": "https://unsplash.com/photos/three-plates-of-asian-food-on-wood-table--YHSwy6uqvk",
49
+ "license": "Unsplash License",
50
+ "licenseUrl": "https://unsplash.com/license"
51
+ },
52
+ {
53
+ "kind": "image",
54
+ "src": "https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d",
55
+ "title": "Portrait of a smiling man in a white t-shirt",
56
+ "author": "Joseph Gonzalez",
57
+ "authorUrl": "https://unsplash.com/@miracletwentyone",
58
+ "source": "Unsplash",
59
+ "sourceUrl": "https://unsplash.com/photos/man-wearing-white-v-neck-shirt-iFgRcqHznqg",
60
+ "license": "Unsplash License",
61
+ "licenseUrl": "https://unsplash.com/license"
62
+ },
63
+ {
64
+ "kind": "image",
65
+ "src": "https://images.unsplash.com/photo-1509440159596-0249088772ff",
66
+ "title": "Two rustic sourdough loaves dusted with flour beside wheat stalks",
67
+ "author": "Wesual Click",
68
+ "authorUrl": "https://unsplash.com/@wesual",
69
+ "source": "Unsplash",
70
+ "sourceUrl": "https://unsplash.com/photos/rustic-bread-loaves-with-wheat-stalks-rsWZ-P9FbQ4",
71
+ "license": "Unsplash License",
72
+ "licenseUrl": "https://unsplash.com/license"
73
+ },
74
+ {
75
+ "kind": "image",
76
+ "src": "https://images.unsplash.com/photo-1512621776951-a57141f2eefd",
77
+ "title": "A bowl of greens, avocado, chickpeas and roasted vegetables",
78
+ "author": "Anna Pelzer",
79
+ "authorUrl": "https://unsplash.com/@annapelzer",
80
+ "source": "Unsplash",
81
+ "sourceUrl": "https://unsplash.com/photos/bowl-of-vegetable-salads-IGfIGP5ONV0",
82
+ "license": "Unsplash License",
83
+ "licenseUrl": "https://unsplash.com/license"
84
+ },
85
+ {
86
+ "kind": "image",
87
+ "src": "https://images.unsplash.com/photo-1513104890138-7c749659a591",
88
+ "title": "A wood-fired pizza cut into slices on a dark table",
89
+ "author": "Ivan Torres",
90
+ "authorUrl": "https://unsplash.com/@iavnt",
91
+ "source": "Unsplash",
92
+ "sourceUrl": "https://unsplash.com/photos/cheese-pizza-with-tomatoes-and-rosemary-MQUqbmszGGM",
93
+ "license": "Unsplash License",
94
+ "licenseUrl": "https://unsplash.com/license"
95
+ },
96
+ {
97
+ "kind": "image",
98
+ "src": "https://images.unsplash.com/photo-1517248135467-4c7edcad34c4",
99
+ "title": "A warm, dimly lit restaurant dining room before service",
100
+ "author": "Jason Leung",
101
+ "authorUrl": "https://unsplash.com/@ninjason",
102
+ "source": "Unsplash",
103
+ "sourceUrl": "https://unsplash.com/photos/photo-of-pub-set-in-room-during-daytime-poI7DelFiVA",
104
+ "license": "Unsplash License",
105
+ "licenseUrl": "https://unsplash.com/license"
106
+ },
107
+ {
108
+ "kind": "image",
109
+ "src": "https://images.unsplash.com/photo-1528605248644-14dd04022da1",
110
+ "title": "Friends talking over a long shared table on a rooftop",
111
+ "author": "Priscilla Du Preez 🇨🇦",
112
+ "authorUrl": "https://unsplash.com/@priscilladupreez",
113
+ "source": "Unsplash",
114
+ "sourceUrl": "https://unsplash.com/photos/people-sitting-in-front-of-table-talking-and-eating-W3SEyZODn8U",
115
+ "license": "Unsplash License",
116
+ "licenseUrl": "https://unsplash.com/license"
117
+ },
118
+ {
119
+ "kind": "image",
120
+ "src": "https://images.unsplash.com/photo-1539571696357-5a69c17a67c6",
121
+ "title": "Portrait of a young man in a black hat, smiling",
122
+ "author": "ian dooley",
123
+ "authorUrl": "https://unsplash.com/@sadswim",
124
+ "source": "Unsplash",
125
+ "sourceUrl": "https://unsplash.com/photos/man-standing-near-white-wall-d1UPkiFd04A",
126
+ "license": "Unsplash License",
127
+ "licenseUrl": "https://unsplash.com/license"
128
+ },
129
+ {
130
+ "kind": "image",
131
+ "src": "https://images.unsplash.com/photo-1544005313-94ddf0286df2",
132
+ "title": "Portrait of a woman with long brown hair in a striped shirt",
133
+ "author": "Štefan Štefančík",
134
+ "authorUrl": "https://unsplash.com/@cikstefan",
135
+ "source": "Unsplash",
136
+ "sourceUrl": "https://unsplash.com/photos/smiling-woman-wearing-white-and-black-pinstriped-collared-top-QXevDflbl8A",
137
+ "license": "Unsplash License",
138
+ "licenseUrl": "https://unsplash.com/license"
139
+ },
140
+ {
141
+ "kind": "image",
142
+ "src": "https://images.unsplash.com/photo-1551218808-94e220e084d2",
143
+ "title": "A cook chopping fresh herbs on a white board",
144
+ "author": "Jonathan Borba",
145
+ "authorUrl": "https://unsplash.com/@jonathanborba",
146
+ "source": "Unsplash",
147
+ "sourceUrl": "https://unsplash.com/photos/person-slicing-vegetable-uB7q7aipU2o",
148
+ "license": "Unsplash License",
149
+ "licenseUrl": "https://unsplash.com/license"
150
+ },
151
+ {
152
+ "kind": "image",
153
+ "src": "https://images.unsplash.com/photo-1555396273-367ea4eb4db5",
154
+ "title": "A rustic café with wooden tables and pendant lights",
155
+ "author": "Shawn",
156
+ "authorUrl": "https://unsplash.com/@shawnanggg",
157
+ "source": "Unsplash",
158
+ "sourceUrl": "https://unsplash.com/photos/interior-of-rustic-cafe-with-wooden-tables-nmpW_WwwVSc",
159
+ "license": "Unsplash License",
160
+ "licenseUrl": "https://unsplash.com/license"
161
+ },
162
+ {
163
+ "kind": "image",
164
+ "src": "https://images.unsplash.com/photo-1559339352-11d035aa65de",
165
+ "title": "A covered restaurant terrace with blue chairs overlooking the water",
166
+ "author": "Albert",
167
+ "authorUrl": "https://unsplash.com/@picturesbyalbert",
168
+ "source": "Unsplash",
169
+ "sourceUrl": "https://unsplash.com/photos/a-restaurant-with-a-view-of-the-water-YYZU0Lo1uXE",
170
+ "license": "Unsplash License",
171
+ "licenseUrl": "https://unsplash.com/license"
172
+ },
173
+ {
174
+ "kind": "image",
175
+ "src": "https://images.unsplash.com/photo-1560250097-0b93528c311a",
176
+ "title": "Portrait of a man in a dark suit and glasses",
177
+ "author": "LinkedIn Sales Solutions",
178
+ "authorUrl": "https://unsplash.com/@linkedinsalesnavigator",
179
+ "source": "Unsplash",
180
+ "sourceUrl": "https://unsplash.com/photos/man-standing-beside-wall-pAtA8xe_iVM",
181
+ "license": "Unsplash License",
182
+ "licenseUrl": "https://unsplash.com/license"
183
+ },
184
+ {
185
+ "kind": "image",
186
+ "src": "https://images.unsplash.com/photo-1580489944761-15a19d654956",
187
+ "title": "Portrait of a woman with dark hair pinned up, smiling",
188
+ "author": "Jake Nackos",
189
+ "authorUrl": "https://unsplash.com/@jakenackos",
190
+ "source": "Unsplash",
191
+ "sourceUrl": "https://unsplash.com/photos/woman-in-white-crew-neck-shirt-smiling-IF9TK5Uy-KI",
192
+ "license": "Unsplash License",
193
+ "licenseUrl": "https://unsplash.com/license"
194
+ }
195
+ ]
196
+ }