@geekity/cms 0.40.0 → 0.42.0

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 (345) hide show
  1. package/admin/components/blocks.njk +15 -1
  2. package/admin/pages/appearance/look.njk +135 -0
  3. package/admin/pages/dashboard/home.njk +9 -3
  4. package/admin/pages/documents/conflict.njk +35 -10
  5. package/admin/pages/documents/editor.njk +29 -0
  6. package/admin/pages/documents/list.njk +44 -1
  7. package/admin/pages/settings/general.njk +4 -0
  8. package/admin/pages/settings/reading.njk +14 -0
  9. package/admin/pages/users/edit.njk +1 -1
  10. package/admin/pages/users/writing-goals.njk +64 -0
  11. package/admin/src/admin.css +32 -0
  12. package/admin/static/admin.css +202 -4
  13. package/admin/static/dashboard.js +51 -23
  14. package/admin/static/editor.js +22 -19
  15. package/dist/access-log.d.ts +3 -0
  16. package/dist/access-log.d.ts.map +1 -1
  17. package/dist/access-log.js +13 -9
  18. package/dist/access-log.js.map +1 -1
  19. package/dist/admin/autosave-client.d.ts +85 -0
  20. package/dist/admin/autosave-client.d.ts.map +1 -0
  21. package/dist/admin/autosave-client.js +218 -0
  22. package/dist/admin/autosave-client.js.map +1 -0
  23. package/dist/admin/autosave.d.ts +12 -0
  24. package/dist/admin/autosave.d.ts.map +1 -0
  25. package/dist/admin/autosave.js +92 -0
  26. package/dist/admin/autosave.js.map +1 -0
  27. package/dist/admin/blocks.d.ts +13 -1
  28. package/dist/admin/blocks.d.ts.map +1 -1
  29. package/dist/admin/blocks.js +40 -5
  30. package/dist/admin/blocks.js.map +1 -1
  31. package/dist/admin/core-widgets.d.ts.map +1 -1
  32. package/dist/admin/core-widgets.js +2 -0
  33. package/dist/admin/core-widgets.js.map +1 -1
  34. package/dist/admin/dashboard.d.ts +2 -2
  35. package/dist/admin/dashboard.d.ts.map +1 -1
  36. package/dist/admin/dashboard.js +23 -15
  37. package/dist/admin/dashboard.js.map +1 -1
  38. package/dist/admin/documents.d.ts.map +1 -1
  39. package/dist/admin/documents.js +223 -16
  40. package/dist/admin/documents.js.map +1 -1
  41. package/dist/admin/editor-word-counter.d.ts +8 -0
  42. package/dist/admin/editor-word-counter.d.ts.map +1 -0
  43. package/dist/admin/editor-word-counter.js +27 -0
  44. package/dist/admin/editor-word-counter.js.map +1 -0
  45. package/dist/admin/editor-words.d.ts +7 -0
  46. package/dist/admin/editor-words.d.ts.map +1 -0
  47. package/dist/admin/editor-words.js +9 -0
  48. package/dist/admin/editor-words.js.map +1 -0
  49. package/dist/admin/flash.d.ts +2 -0
  50. package/dist/admin/flash.d.ts.map +1 -1
  51. package/dist/admin/flash.js +12 -0
  52. package/dist/admin/flash.js.map +1 -1
  53. package/dist/admin/focus-mode.d.ts +37 -0
  54. package/dist/admin/focus-mode.d.ts.map +1 -0
  55. package/dist/admin/focus-mode.js +71 -0
  56. package/dist/admin/focus-mode.js.map +1 -0
  57. package/dist/admin/look.d.ts +12 -0
  58. package/dist/admin/look.d.ts.map +1 -0
  59. package/dist/admin/look.js +179 -0
  60. package/dist/admin/look.js.map +1 -0
  61. package/dist/admin/menu.d.ts.map +1 -1
  62. package/dist/admin/menu.js +7 -3
  63. package/dist/admin/menu.js.map +1 -1
  64. package/dist/admin/preview.d.ts.map +1 -1
  65. package/dist/admin/preview.js +1 -0
  66. package/dist/admin/preview.js.map +1 -1
  67. package/dist/admin/routes.d.ts.map +1 -1
  68. package/dist/admin/routes.js +8 -4
  69. package/dist/admin/routes.js.map +1 -1
  70. package/dist/admin/settings-fields.d.ts +1 -1
  71. package/dist/admin/settings-fields.d.ts.map +1 -1
  72. package/dist/admin/settings-fields.js +2 -0
  73. package/dist/admin/settings-fields.js.map +1 -1
  74. package/dist/admin/settings-general.d.ts.map +1 -1
  75. package/dist/admin/settings-general.js +1 -0
  76. package/dist/admin/settings-general.js.map +1 -1
  77. package/dist/admin/settings-reading.d.ts.map +1 -1
  78. package/dist/admin/settings-reading.js +7 -1
  79. package/dist/admin/settings-reading.js.map +1 -1
  80. package/dist/admin/templates.d.ts +2 -0
  81. package/dist/admin/templates.d.ts.map +1 -1
  82. package/dist/admin/templates.js +2 -0
  83. package/dist/admin/templates.js.map +1 -1
  84. package/dist/admin/users.d.ts.map +1 -1
  85. package/dist/admin/users.js +4 -0
  86. package/dist/admin/users.js.map +1 -1
  87. package/dist/admin/widget-writing.d.ts +3 -0
  88. package/dist/admin/widget-writing.d.ts.map +1 -0
  89. package/dist/admin/widget-writing.js +102 -0
  90. package/dist/admin/widget-writing.js.map +1 -0
  91. package/dist/admin/widgets.d.ts +4 -1
  92. package/dist/admin/widgets.d.ts.map +1 -1
  93. package/dist/admin/widgets.js +19 -8
  94. package/dist/admin/widgets.js.map +1 -1
  95. package/dist/admin/writing-goals.d.ts +33 -0
  96. package/dist/admin/writing-goals.d.ts.map +1 -0
  97. package/dist/admin/writing-goals.js +149 -0
  98. package/dist/admin/writing-goals.js.map +1 -0
  99. package/dist/autosave/index.d.ts +5 -0
  100. package/dist/autosave/index.d.ts.map +1 -0
  101. package/dist/autosave/index.js +3 -0
  102. package/dist/autosave/index.js.map +1 -0
  103. package/dist/autosave/key.d.ts +13 -0
  104. package/dist/autosave/key.d.ts.map +1 -0
  105. package/dist/autosave/key.js +29 -0
  106. package/dist/autosave/key.js.map +1 -0
  107. package/dist/autosave/store.d.ts +23 -0
  108. package/dist/autosave/store.d.ts.map +1 -0
  109. package/dist/autosave/store.js +114 -0
  110. package/dist/autosave/store.js.map +1 -0
  111. package/dist/cli.d.ts +1 -1
  112. package/dist/cli.d.ts.map +1 -1
  113. package/dist/cli.js +65 -4
  114. package/dist/cli.js.map +1 -1
  115. package/dist/cms/app.d.ts.map +1 -1
  116. package/dist/cms/app.js +1 -0
  117. package/dist/cms/app.js.map +1 -1
  118. package/dist/cms/boot.d.ts.map +1 -1
  119. package/dist/cms/boot.js +2 -0
  120. package/dist/cms/boot.js.map +1 -1
  121. package/dist/cms/create.d.ts +11 -2
  122. package/dist/cms/create.d.ts.map +1 -1
  123. package/dist/cms/create.js +61 -2
  124. package/dist/cms/create.js.map +1 -1
  125. package/dist/cms/server-error.d.ts.map +1 -1
  126. package/dist/cms/server-error.js +1 -0
  127. package/dist/cms/server-error.js.map +1 -1
  128. package/dist/cms/services.d.ts +2 -0
  129. package/dist/cms/services.d.ts.map +1 -1
  130. package/dist/cms/services.js +14 -0
  131. package/dist/cms/services.js.map +1 -1
  132. package/dist/config.d.ts +20 -0
  133. package/dist/config.d.ts.map +1 -1
  134. package/dist/config.js +6 -2
  135. package/dist/config.js.map +1 -1
  136. package/dist/content/post-type.d.ts +1 -0
  137. package/dist/content/post-type.d.ts.map +1 -1
  138. package/dist/content/post-type.js +1 -1
  139. package/dist/content/post-type.js.map +1 -1
  140. package/dist/content/words.d.ts +3 -0
  141. package/dist/content/words.d.ts.map +1 -0
  142. package/dist/content/words.js +120 -0
  143. package/dist/content/words.js.map +1 -0
  144. package/dist/content/write.d.ts +8 -0
  145. package/dist/content/write.d.ts.map +1 -1
  146. package/dist/content/write.js +1 -1
  147. package/dist/content/write.js.map +1 -1
  148. package/dist/files/data-files.d.ts +5 -0
  149. package/dist/files/data-files.d.ts.map +1 -1
  150. package/dist/files/data-files.js +30 -0
  151. package/dist/files/data-files.js.map +1 -1
  152. package/dist/fonts/css.d.ts +25 -0
  153. package/dist/fonts/css.d.ts.map +1 -0
  154. package/dist/fonts/css.js +88 -0
  155. package/dist/fonts/css.js.map +1 -0
  156. package/dist/fonts/family.d.ts +23 -0
  157. package/dist/fonts/family.d.ts.map +1 -0
  158. package/dist/fonts/family.js +41 -0
  159. package/dist/fonts/family.js.map +1 -0
  160. package/dist/fonts/index.d.ts +10 -0
  161. package/dist/fonts/index.d.ts.map +1 -0
  162. package/dist/fonts/index.js +6 -0
  163. package/dist/fonts/index.js.map +1 -0
  164. package/dist/fonts/job.d.ts +20 -0
  165. package/dist/fonts/job.d.ts.map +1 -0
  166. package/dist/fonts/job.js +49 -0
  167. package/dist/fonts/job.js.map +1 -0
  168. package/dist/fonts/roles.d.ts +53 -0
  169. package/dist/fonts/roles.d.ts.map +1 -0
  170. package/dist/fonts/roles.js +64 -0
  171. package/dist/fonts/roles.js.map +1 -0
  172. package/dist/fonts/store.d.ts +69 -0
  173. package/dist/fonts/store.d.ts.map +1 -0
  174. package/dist/fonts/store.js +237 -0
  175. package/dist/fonts/store.js.map +1 -0
  176. package/dist/gemini/capsule.d.ts +4 -0
  177. package/dist/gemini/capsule.d.ts.map +1 -0
  178. package/dist/gemini/capsule.js +9 -0
  179. package/dist/gemini/capsule.js.map +1 -0
  180. package/dist/gemini/certificate.d.ts +34 -0
  181. package/dist/gemini/certificate.d.ts.map +1 -0
  182. package/dist/gemini/certificate.js +255 -0
  183. package/dist/gemini/certificate.js.map +1 -0
  184. package/dist/gemini/site-certificate.d.ts +8 -0
  185. package/dist/gemini/site-certificate.d.ts.map +1 -0
  186. package/dist/gemini/site-certificate.js +17 -0
  187. package/dist/gemini/site-certificate.js.map +1 -0
  188. package/dist/micropub/endpoint.d.ts.map +1 -1
  189. package/dist/micropub/endpoint.js +12 -0
  190. package/dist/micropub/endpoint.js.map +1 -1
  191. package/dist/plugin.d.ts +15 -2
  192. package/dist/plugin.d.ts.map +1 -1
  193. package/dist/plugin.js.map +1 -1
  194. package/dist/settings/registry.d.ts.map +1 -1
  195. package/dist/settings/registry.js +5 -1
  196. package/dist/settings/registry.js.map +1 -1
  197. package/dist/settings/types.d.ts +1 -1
  198. package/dist/settings/types.d.ts.map +1 -1
  199. package/dist/site/dashboard-layout.d.ts +33 -26
  200. package/dist/site/dashboard-layout.d.ts.map +1 -1
  201. package/dist/site/dashboard-layout.js +94 -39
  202. package/dist/site/dashboard-layout.js.map +1 -1
  203. package/dist/site/namespace.d.ts +6 -0
  204. package/dist/site/namespace.d.ts.map +1 -1
  205. package/dist/site/namespace.js +46 -1
  206. package/dist/site/namespace.js.map +1 -1
  207. package/dist/site/users.d.ts +7 -0
  208. package/dist/site/users.d.ts.map +1 -1
  209. package/dist/site/users.js +7 -0
  210. package/dist/site/users.js.map +1 -1
  211. package/dist/site/writing-goals.d.ts +22 -0
  212. package/dist/site/writing-goals.d.ts.map +1 -0
  213. package/dist/site/writing-goals.js +42 -0
  214. package/dist/site/writing-goals.js.map +1 -0
  215. package/dist/store/schema.d.ts.map +1 -1
  216. package/dist/store/schema.js +4 -0
  217. package/dist/store/schema.js.map +1 -1
  218. package/dist/store/sessions.d.ts +2 -1
  219. package/dist/store/sessions.d.ts.map +1 -1
  220. package/dist/store/sessions.js +30 -12
  221. package/dist/store/sessions.js.map +1 -1
  222. package/dist/theme/font-family.d.ts +13 -0
  223. package/dist/theme/font-family.d.ts.map +1 -0
  224. package/dist/theme/font-family.js +21 -0
  225. package/dist/theme/font-family.js.map +1 -0
  226. package/dist/theme/scheme-tokens.d.ts +50 -0
  227. package/dist/theme/scheme-tokens.d.ts.map +1 -0
  228. package/dist/theme/scheme-tokens.js +240 -0
  229. package/dist/theme/scheme-tokens.js.map +1 -0
  230. package/dist/theme/site-data.d.ts +12 -0
  231. package/dist/theme/site-data.d.ts.map +1 -1
  232. package/dist/theme/site-data.js +15 -0
  233. package/dist/theme/site-data.js.map +1 -1
  234. package/dist/theme/themes.d.ts +74 -0
  235. package/dist/theme/themes.d.ts.map +1 -1
  236. package/dist/theme/themes.js +100 -9
  237. package/dist/theme/themes.js.map +1 -1
  238. package/dist/util/public-address.d.ts +1 -0
  239. package/dist/util/public-address.d.ts.map +1 -1
  240. package/dist/util/public-address.js +38 -30
  241. package/dist/util/public-address.js.map +1 -1
  242. package/dist/web/access-line.d.ts +2 -0
  243. package/dist/web/access-line.d.ts.map +1 -0
  244. package/dist/web/access-line.js +6 -0
  245. package/dist/web/access-line.js.map +1 -0
  246. package/dist/web/document-page.d.ts.map +1 -1
  247. package/dist/web/document-page.js +3 -4
  248. package/dist/web/document-page.js.map +1 -1
  249. package/dist/web/embed.d.ts.map +1 -1
  250. package/dist/web/embed.js +2 -1
  251. package/dist/web/embed.js.map +1 -1
  252. package/dist/web/env.d.ts +2 -0
  253. package/dist/web/env.d.ts.map +1 -1
  254. package/dist/web/feed-routes.d.ts.map +1 -1
  255. package/dist/web/feed-routes.js +4 -4
  256. package/dist/web/feed-routes.js.map +1 -1
  257. package/dist/web/feed-source.d.ts +1 -1
  258. package/dist/web/feed-source.d.ts.map +1 -1
  259. package/dist/web/feed-source.js +1 -1
  260. package/dist/web/feed-source.js.map +1 -1
  261. package/dist/web/font-routes.d.ts +13 -0
  262. package/dist/web/font-routes.d.ts.map +1 -0
  263. package/dist/web/font-routes.js +27 -0
  264. package/dist/web/font-routes.js.map +1 -0
  265. package/dist/web/gemini-listener.d.ts +30 -0
  266. package/dist/web/gemini-listener.d.ts.map +1 -0
  267. package/dist/web/gemini-listener.js +186 -0
  268. package/dist/web/gemini-listener.js.map +1 -0
  269. package/dist/web/gemini-request.d.ts +23 -0
  270. package/dist/web/gemini-request.d.ts.map +1 -0
  271. package/dist/web/gemini-request.js +127 -0
  272. package/dist/web/gemini-request.js.map +1 -0
  273. package/dist/web/listing-pages.d.ts.map +1 -1
  274. package/dist/web/listing-pages.js +7 -5
  275. package/dist/web/listing-pages.js.map +1 -1
  276. package/dist/web/llms.d.ts +1 -0
  277. package/dist/web/llms.d.ts.map +1 -1
  278. package/dist/web/llms.js +3 -0
  279. package/dist/web/llms.js.map +1 -1
  280. package/dist/web/maintenance.d.ts.map +1 -1
  281. package/dist/web/maintenance.js +6 -2
  282. package/dist/web/maintenance.js.map +1 -1
  283. package/dist/web/manifest.d.ts +8 -5
  284. package/dist/web/manifest.d.ts.map +1 -1
  285. package/dist/web/manifest.js +10 -7
  286. package/dist/web/manifest.js.map +1 -1
  287. package/dist/web/markdown-representation.d.ts +11 -20
  288. package/dist/web/markdown-representation.d.ts.map +1 -1
  289. package/dist/web/markdown-representation.js +57 -58
  290. package/dist/web/markdown-representation.js.map +1 -1
  291. package/dist/web/negotiate.d.ts +4 -16
  292. package/dist/web/negotiate.d.ts.map +1 -1
  293. package/dist/web/negotiate.js +23 -18
  294. package/dist/web/negotiate.js.map +1 -1
  295. package/dist/web/oembed.d.ts +17 -3
  296. package/dist/web/oembed.d.ts.map +1 -1
  297. package/dist/web/oembed.js +68 -26
  298. package/dist/web/oembed.js.map +1 -1
  299. package/dist/web/proxy-protocol.d.ts +13 -0
  300. package/dist/web/proxy-protocol.d.ts.map +1 -0
  301. package/dist/web/proxy-protocol.js +79 -0
  302. package/dist/web/proxy-protocol.js.map +1 -0
  303. package/dist/web/render.d.ts +52 -22
  304. package/dist/web/render.d.ts.map +1 -1
  305. package/dist/web/render.js +94 -30
  306. package/dist/web/render.js.map +1 -1
  307. package/dist/web/routes.d.ts.map +1 -1
  308. package/dist/web/routes.js +7 -8
  309. package/dist/web/routes.js.map +1 -1
  310. package/dist/web/site-index.d.ts.map +1 -1
  311. package/dist/web/site-index.js +6 -2
  312. package/dist/web/site-index.js.map +1 -1
  313. package/dist/web/status-pages.d.ts +2 -3
  314. package/dist/web/status-pages.d.ts.map +1 -1
  315. package/dist/web/status-pages.js +14 -11
  316. package/dist/web/status-pages.js.map +1 -1
  317. package/dist/web/throttle.d.ts +9 -0
  318. package/dist/web/throttle.d.ts.map +1 -1
  319. package/dist/web/throttle.js +17 -0
  320. package/dist/web/throttle.js.map +1 -1
  321. package/dist/webmention/fetch-public.d.ts +6 -0
  322. package/dist/webmention/fetch-public.d.ts.map +1 -1
  323. package/dist/webmention/fetch-public.js +6 -1
  324. package/dist/webmention/fetch-public.js.map +1 -1
  325. package/dist/writing/ledger.d.ts +15 -0
  326. package/dist/writing/ledger.d.ts.map +1 -0
  327. package/dist/writing/ledger.js +70 -0
  328. package/dist/writing/ledger.js.map +1 -0
  329. package/dist/writing/progress.d.ts +25 -0
  330. package/dist/writing/progress.d.ts.map +1 -0
  331. package/dist/writing/progress.js +83 -0
  332. package/dist/writing/progress.js.map +1 -0
  333. package/package.json +2 -1
  334. package/themes/default/layouts/404.gmi.njk +10 -0
  335. package/themes/default/layouts/410.gmi.njk +8 -0
  336. package/themes/default/layouts/500.gmi.njk +9 -0
  337. package/themes/default/layouts/503.gmi.njk +9 -0
  338. package/themes/default/layouts/base.njk +31 -16
  339. package/themes/default/layouts/page.njk +4 -8
  340. package/themes/default/partials/bio.njk +1 -1
  341. package/themes/default/partials/contact-form.njk +1 -1
  342. package/themes/default/partials/markdown-footer.md.njk +9 -1
  343. package/themes/default/src/style.css +326 -15
  344. package/themes/default/static/style.css +489 -3
  345. package/themes/default/theme.json +23 -1
@@ -321,6 +321,11 @@
321
321
  display: none !important;
322
322
  }
323
323
 
324
+ :root {
325
+ --font-heading: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;
326
+ --font-body: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;
327
+ }
328
+
324
329
  html {
325
330
  -webkit-text-size-adjust: 100%;
326
331
  -moz-text-size-adjust: 100%;
@@ -331,8 +336,8 @@
331
336
 
332
337
  body {
333
338
  background-color: var(--color-body);
339
+ font-family: var(--font-body);
334
340
  --tw-leading: var(--leading-relaxed);
335
- font-family: Iowan Old Style, Palatino Linotype, Palatino, Book Antiqua, Georgia, serif;
336
341
  line-height: var(--leading-relaxed);
337
342
  color: var(--color-text);
338
343
  -webkit-font-smoothing: antialiased;
@@ -340,6 +345,7 @@
340
345
  }
341
346
 
342
347
  h1, h2, h3, h4, h5, h6 {
348
+ font-family: var(--font-heading);
343
349
  --tw-font-weight: var(--font-weight-bold);
344
350
  font-weight: var(--font-weight-bold);
345
351
  --tw-tracking: var(--tracking-tight);
@@ -519,6 +525,7 @@
519
525
  .header-link-home {
520
526
  min-block-size: 24px;
521
527
  min-inline-size: 24px;
528
+ font-family: var(--font-heading);
522
529
  font-size: var(--text-lg);
523
530
  line-height: var(--tw-leading, var(--text-lg--line-height));
524
531
  --tw-font-weight: var(--font-weight-bold);
@@ -527,6 +534,15 @@
527
534
  display: inline-flex;
528
535
  }
529
536
 
537
+ .site-icon {
538
+ vertical-align: -.12em;
539
+ border-radius: .18em;
540
+ width: 1em;
541
+ height: 1em;
542
+ margin-inline-end: .3em;
543
+ display: inline-block;
544
+ }
545
+
530
546
  .site-tagline {
531
547
  margin-top: calc(var(--spacing) * 3);
532
548
  font-size: var(--text-lg);
@@ -1685,6 +1701,7 @@
1685
1701
  .backlinks-title {
1686
1702
  margin-bottom: calc(var(--spacing) * 2);
1687
1703
  --tw-font-weight: var(--font-weight-normal);
1704
+ font-family: system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
1688
1705
  font-size: .72rem;
1689
1706
  font-weight: var(--font-weight-normal);
1690
1707
  --tw-tracking: .14em;
@@ -2223,7 +2240,7 @@
2223
2240
  width: 100%;
2224
2241
  padding-inline: calc(var(--spacing) * 3);
2225
2242
  padding-block: calc(var(--spacing) * 2);
2226
- font-family: Iowan Old Style, Palatino Linotype, Palatino, Book Antiqua, Georgia, serif;
2243
+ font-family: var(--font-body);
2227
2244
  font-size: var(--text-base);
2228
2245
  line-height: var(--tw-leading, var(--text-base--line-height));
2229
2246
  color: var(--color-text);
@@ -2408,6 +2425,17 @@
2408
2425
 
2409
2426
  :root {
2410
2427
  color-scheme: light dark;
2428
+ }
2429
+
2430
+ :root[data-mode="light"] {
2431
+ color-scheme: light;
2432
+ }
2433
+
2434
+ :root[data-mode="dark"] {
2435
+ color-scheme: dark;
2436
+ }
2437
+
2438
+ :root, :root[data-scheme="paper"] {
2411
2439
  --color-body: #faf7f2;
2412
2440
  --color-text: #1c1917;
2413
2441
  --color-muted: #534c46;
@@ -2436,7 +2464,7 @@
2436
2464
  }
2437
2465
 
2438
2466
  @media (prefers-color-scheme: dark) {
2439
- :root {
2467
+ :is(:root, :root[data-scheme="paper"]):not([data-mode="light"]) {
2440
2468
  --color-body: #171412;
2441
2469
  --color-text: #ece6de;
2442
2470
  --color-muted: #b2aaa0;
@@ -2465,6 +2493,464 @@
2465
2493
  }
2466
2494
  }
2467
2495
 
2496
+ :is(:root, :root[data-scheme="paper"])[data-mode="dark"] {
2497
+ --color-body: #171412;
2498
+ --color-text: #ece6de;
2499
+ --color-muted: #b2aaa0;
2500
+ --color-primary: #ee9370;
2501
+ --color-secondary: #86b8e2;
2502
+ --color-rule: #3a332e;
2503
+ --color-edge: #706a67;
2504
+ --color-base: #221d1a;
2505
+ --color-base-2: #222124;
2506
+ --color-base-3: #2d2421;
2507
+ --color-code-background: #221d1a;
2508
+ --color-code-text: #ece6de;
2509
+ --color-error: #ff8f9f;
2510
+ --color-code-comment: #a9a9a9;
2511
+ --color-code-tag: #b4b7b4;
2512
+ --color-code-name: #f48b8d;
2513
+ --color-code-literal: #f99157;
2514
+ --color-code-class: #fc6;
2515
+ --color-code-string: #9c9;
2516
+ --color-code-support: #6cc;
2517
+ --color-code-function: #83add6;
2518
+ --color-code-keyword: #c9c;
2519
+ --color-code-meta: #c6a198;
2520
+ --color-code-added-background: #203622;
2521
+ --color-code-removed-background: #401e1e;
2522
+ }
2523
+
2524
+ :root[data-scheme="slate"] {
2525
+ --color-body: #f4f7fb;
2526
+ --color-text: #161b20;
2527
+ --color-muted: #4b4f54;
2528
+ --color-primary: #0f4e94;
2529
+ --color-secondary: #59447b;
2530
+ --color-rule: #dadee3;
2531
+ --color-edge: #82868a;
2532
+ --color-base: #edf1f6;
2533
+ --color-base-2: #f3f2f5;
2534
+ --color-base-3: #fff;
2535
+ --color-code-background: #edf1f6;
2536
+ --color-code-text: #161b20;
2537
+ --color-error: #9d121d;
2538
+ --color-code-comment: #4e4e4e;
2539
+ --color-code-tag: #514e4f;
2540
+ --color-code-name: #991c21;
2541
+ --color-code-literal: #7c3e03;
2542
+ --color-code-class: #614c02;
2543
+ --color-code-string: #405603;
2544
+ --color-code-support: #045858;
2545
+ --color-code-function: #1f4f8a;
2546
+ --color-code-keyword: #6b3a7f;
2547
+ --color-code-meta: #6d443a;
2548
+ --color-code-added-background: #d6f0d6;
2549
+ --color-code-removed-background: #fedbda;
2550
+ }
2551
+
2552
+ @media (prefers-color-scheme: dark) {
2553
+ :root[data-scheme="slate"]:not([data-mode="light"]) {
2554
+ --color-body: #12161c;
2555
+ --color-text: #e3e8f0;
2556
+ --color-muted: #a3adba;
2557
+ --color-primary: #80b7fe;
2558
+ --color-secondary: #b7a2e0;
2559
+ --color-rule: #212831;
2560
+ --color-edge: #676e77;
2561
+ --color-base: #181f27;
2562
+ --color-base-2: #1e1d22;
2563
+ --color-base-3: #21272f;
2564
+ --color-code-background: #181f27;
2565
+ --color-code-text: #e3e8f0;
2566
+ --color-error: #ff8a83;
2567
+ --color-code-comment: #acacac;
2568
+ --color-code-tag: #adabab;
2569
+ --color-code-name: #ff8a83;
2570
+ --color-code-literal: #f29551;
2571
+ --color-code-class: #cca83c;
2572
+ --color-code-string: #95b84d;
2573
+ --color-code-support: #5bbaba;
2574
+ --color-code-function: #7caff1;
2575
+ --color-code-keyword: #cd98e4;
2576
+ --color-code-meta: #d1a195;
2577
+ --color-code-added-background: #213622;
2578
+ --color-code-removed-background: #442727;
2579
+ }
2580
+ }
2581
+
2582
+ :root[data-scheme="slate"][data-mode="dark"] {
2583
+ --color-body: #12161c;
2584
+ --color-text: #e3e8f0;
2585
+ --color-muted: #a3adba;
2586
+ --color-primary: #80b7fe;
2587
+ --color-secondary: #b7a2e0;
2588
+ --color-rule: #212831;
2589
+ --color-edge: #676e77;
2590
+ --color-base: #181f27;
2591
+ --color-base-2: #1e1d22;
2592
+ --color-base-3: #21272f;
2593
+ --color-code-background: #181f27;
2594
+ --color-code-text: #e3e8f0;
2595
+ --color-error: #ff8a83;
2596
+ --color-code-comment: #acacac;
2597
+ --color-code-tag: #adabab;
2598
+ --color-code-name: #ff8a83;
2599
+ --color-code-literal: #f29551;
2600
+ --color-code-class: #cca83c;
2601
+ --color-code-string: #95b84d;
2602
+ --color-code-support: #5bbaba;
2603
+ --color-code-function: #7caff1;
2604
+ --color-code-keyword: #cd98e4;
2605
+ --color-code-meta: #d1a195;
2606
+ --color-code-added-background: #213622;
2607
+ --color-code-removed-background: #442727;
2608
+ }
2609
+
2610
+ :root[data-scheme="forest"] {
2611
+ --color-body: #f5f7ed;
2612
+ --color-text: #1a1b15;
2613
+ --color-muted: #4d4f42;
2614
+ --color-primary: #035b27;
2615
+ --color-secondary: #734301;
2616
+ --color-rule: #dcdfd0;
2617
+ --color-edge: #84867b;
2618
+ --color-base: #eff1e4;
2619
+ --color-base-2: #eef3ef;
2620
+ --color-base-3: #fff;
2621
+ --color-code-background: #eff1e4;
2622
+ --color-code-text: #1a1b15;
2623
+ --color-error: #9c111c;
2624
+ --color-code-comment: #4e4e4e;
2625
+ --color-code-tag: #504d4e;
2626
+ --color-code-name: #991b21;
2627
+ --color-code-literal: #7b3d02;
2628
+ --color-code-class: #604b01;
2629
+ --color-code-string: #3f5501;
2630
+ --color-code-support: #025757;
2631
+ --color-code-function: #1e4e89;
2632
+ --color-code-keyword: #6a3a7f;
2633
+ --color-code-meta: #6c4339;
2634
+ --color-code-added-background: #d6f0d6;
2635
+ --color-code-removed-background: #fedbda;
2636
+ }
2637
+
2638
+ @media (prefers-color-scheme: dark) {
2639
+ :root[data-scheme="forest"]:not([data-mode="light"]) {
2640
+ --color-body: #0f1912;
2641
+ --color-text: #e2eae4;
2642
+ --color-muted: #9db1a3;
2643
+ --color-primary: #75c687;
2644
+ --color-secondary: #daa168;
2645
+ --color-rule: #1c2c22;
2646
+ --color-edge: #627166;
2647
+ --color-base: #142219;
2648
+ --color-base-2: #182020;
2649
+ --color-base-3: #1c2a21;
2650
+ --color-code-background: #142219;
2651
+ --color-code-text: #e2eae4;
2652
+ --color-error: #fe8c84;
2653
+ --color-code-comment: #acacac;
2654
+ --color-code-tag: #aeacac;
2655
+ --color-code-name: #fe8c84;
2656
+ --color-code-literal: #f39651;
2657
+ --color-code-class: #cca83c;
2658
+ --color-code-string: #95b84d;
2659
+ --color-code-support: #5cbbba;
2660
+ --color-code-function: #7caff1;
2661
+ --color-code-keyword: #cd99e5;
2662
+ --color-code-meta: #d1a195;
2663
+ --color-code-added-background: #213622;
2664
+ --color-code-removed-background: #442727;
2665
+ }
2666
+ }
2667
+
2668
+ :root[data-scheme="forest"][data-mode="dark"] {
2669
+ --color-body: #0f1912;
2670
+ --color-text: #e2eae4;
2671
+ --color-muted: #9db1a3;
2672
+ --color-primary: #75c687;
2673
+ --color-secondary: #daa168;
2674
+ --color-rule: #1c2c22;
2675
+ --color-edge: #627166;
2676
+ --color-base: #142219;
2677
+ --color-base-2: #182020;
2678
+ --color-base-3: #1c2a21;
2679
+ --color-code-background: #142219;
2680
+ --color-code-text: #e2eae4;
2681
+ --color-error: #fe8c84;
2682
+ --color-code-comment: #acacac;
2683
+ --color-code-tag: #aeacac;
2684
+ --color-code-name: #fe8c84;
2685
+ --color-code-literal: #f39651;
2686
+ --color-code-class: #cca83c;
2687
+ --color-code-string: #95b84d;
2688
+ --color-code-support: #5cbbba;
2689
+ --color-code-function: #7caff1;
2690
+ --color-code-keyword: #cd99e5;
2691
+ --color-code-meta: #d1a195;
2692
+ --color-code-added-background: #213622;
2693
+ --color-code-removed-background: #442727;
2694
+ }
2695
+
2696
+ :root[data-scheme="plum"] {
2697
+ --color-body: #fbf3fa;
2698
+ --color-text: #1e191d;
2699
+ --color-muted: #544b53;
2700
+ --color-primary: #822973;
2701
+ --color-secondary: #3f488b;
2702
+ --color-rule: #e4d9e2;
2703
+ --color-edge: #8a8289;
2704
+ --color-base: #f6ecf5;
2705
+ --color-base-2: #f6f0f1;
2706
+ --color-base-3: #fff;
2707
+ --color-code-background: #f6ecf5;
2708
+ --color-code-text: #1e191d;
2709
+ --color-error: #9c111c;
2710
+ --color-code-comment: #4d4d4d;
2711
+ --color-code-tag: #504d4e;
2712
+ --color-code-name: #981b20;
2713
+ --color-code-literal: #7b3d02;
2714
+ --color-code-class: #604b01;
2715
+ --color-code-string: #3f5501;
2716
+ --color-code-support: #025757;
2717
+ --color-code-function: #1e4e89;
2718
+ --color-code-keyword: #6a397e;
2719
+ --color-code-meta: #6c4339;
2720
+ --color-code-added-background: #d6f0d6;
2721
+ --color-code-removed-background: #fedbda;
2722
+ }
2723
+
2724
+ @media (prefers-color-scheme: dark) {
2725
+ :root[data-scheme="plum"]:not([data-mode="light"]) {
2726
+ --color-body: #1b121d;
2727
+ --color-text: #ece5ed;
2728
+ --color-muted: #b7a5bc;
2729
+ --color-primary: #f493e0;
2730
+ --color-secondary: #98a6f2;
2731
+ --color-rule: #302233;
2732
+ --color-edge: #766879;
2733
+ --color-base: #251928;
2734
+ --color-base-2: #251b1e;
2735
+ --color-base-3: #2e2131;
2736
+ --color-code-background: #251928;
2737
+ --color-code-text: #ece5ed;
2738
+ --color-error: #ff8880;
2739
+ --color-code-comment: #ababab;
2740
+ --color-code-tag: #acaaab;
2741
+ --color-code-name: #ff8880;
2742
+ --color-code-literal: #f1944f;
2743
+ --color-code-class: #cba63a;
2744
+ --color-code-string: #94b74c;
2745
+ --color-code-support: #5ab9b8;
2746
+ --color-code-function: #7aadef;
2747
+ --color-code-keyword: #cb97e3;
2748
+ --color-code-meta: #d0a093;
2749
+ --color-code-added-background: #213622;
2750
+ --color-code-removed-background: #442727;
2751
+ }
2752
+ }
2753
+
2754
+ :root[data-scheme="plum"][data-mode="dark"] {
2755
+ --color-body: #1b121d;
2756
+ --color-text: #ece5ed;
2757
+ --color-muted: #b7a5bc;
2758
+ --color-primary: #f493e0;
2759
+ --color-secondary: #98a6f2;
2760
+ --color-rule: #302233;
2761
+ --color-edge: #766879;
2762
+ --color-base: #251928;
2763
+ --color-base-2: #251b1e;
2764
+ --color-base-3: #2e2131;
2765
+ --color-code-background: #251928;
2766
+ --color-code-text: #ece5ed;
2767
+ --color-error: #ff8880;
2768
+ --color-code-comment: #ababab;
2769
+ --color-code-tag: #acaaab;
2770
+ --color-code-name: #ff8880;
2771
+ --color-code-literal: #f1944f;
2772
+ --color-code-class: #cba63a;
2773
+ --color-code-string: #94b74c;
2774
+ --color-code-support: #5ab9b8;
2775
+ --color-code-function: #7aadef;
2776
+ --color-code-keyword: #cb97e3;
2777
+ --color-code-meta: #d0a093;
2778
+ --color-code-added-background: #213622;
2779
+ --color-code-removed-background: #442727;
2780
+ }
2781
+
2782
+ :root[data-scheme="ocean"] {
2783
+ --color-body: #eef9fb;
2784
+ --color-text: #141c1d;
2785
+ --color-muted: #435153;
2786
+ --color-primary: #04585c;
2787
+ --color-secondary: #184f90;
2788
+ --color-rule: #d2e1e3;
2789
+ --color-edge: #7c888a;
2790
+ --color-base: #e5f4f6;
2791
+ --color-base-2: #eff3f7;
2792
+ --color-base-3: #fff;
2793
+ --color-code-background: #e5f4f6;
2794
+ --color-code-text: #141c1d;
2795
+ --color-error: #9e131d;
2796
+ --color-code-comment: #4f4f4f;
2797
+ --color-code-tag: #514e4f;
2798
+ --color-code-name: #991c21;
2799
+ --color-code-literal: #7d3e00;
2800
+ --color-code-class: #624c03;
2801
+ --color-code-string: #405603;
2802
+ --color-code-support: #045858;
2803
+ --color-code-function: #1f4f8a;
2804
+ --color-code-keyword: #6b3b80;
2805
+ --color-code-meta: #6d443a;
2806
+ --color-code-added-background: #d6f0d6;
2807
+ --color-code-removed-background: #fedbda;
2808
+ }
2809
+
2810
+ @media (prefers-color-scheme: dark) {
2811
+ :root[data-scheme="ocean"]:not([data-mode="light"]) {
2812
+ --color-body: #08191f;
2813
+ --color-text: #e0eaee;
2814
+ --color-muted: #91b1be;
2815
+ --color-primary: #57c5cb;
2816
+ --color-secondary: #77aff7;
2817
+ --color-rule: #122b35;
2818
+ --color-edge: #59717a;
2819
+ --color-base: #0a212a;
2820
+ --color-base-2: #1a1e26;
2821
+ --color-base-3: #122a33;
2822
+ --color-code-background: #0a212a;
2823
+ --color-code-text: #e0eaee;
2824
+ --color-error: #ff8a83;
2825
+ --color-code-comment: #acacac;
2826
+ --color-code-tag: #adabab;
2827
+ --color-code-name: #ff8a83;
2828
+ --color-code-literal: #f29551;
2829
+ --color-code-class: #cca83c;
2830
+ --color-code-string: #95b84d;
2831
+ --color-code-support: #5bbaba;
2832
+ --color-code-function: #7caff1;
2833
+ --color-code-keyword: #cd98e4;
2834
+ --color-code-meta: #d1a195;
2835
+ --color-code-added-background: #213622;
2836
+ --color-code-removed-background: #442727;
2837
+ }
2838
+ }
2839
+
2840
+ :root[data-scheme="ocean"][data-mode="dark"] {
2841
+ --color-body: #08191f;
2842
+ --color-text: #e0eaee;
2843
+ --color-muted: #91b1be;
2844
+ --color-primary: #57c5cb;
2845
+ --color-secondary: #77aff7;
2846
+ --color-rule: #122b35;
2847
+ --color-edge: #59717a;
2848
+ --color-base: #0a212a;
2849
+ --color-base-2: #1a1e26;
2850
+ --color-base-3: #122a33;
2851
+ --color-code-background: #0a212a;
2852
+ --color-code-text: #e0eaee;
2853
+ --color-error: #ff8a83;
2854
+ --color-code-comment: #acacac;
2855
+ --color-code-tag: #adabab;
2856
+ --color-code-name: #ff8a83;
2857
+ --color-code-literal: #f29551;
2858
+ --color-code-class: #cca83c;
2859
+ --color-code-string: #95b84d;
2860
+ --color-code-support: #5bbaba;
2861
+ --color-code-function: #7caff1;
2862
+ --color-code-keyword: #cd98e4;
2863
+ --color-code-meta: #d1a195;
2864
+ --color-code-added-background: #213622;
2865
+ --color-code-removed-background: #442727;
2866
+ }
2867
+
2868
+ :root[data-scheme="ink"] {
2869
+ --color-body: #fff;
2870
+ --color-text: #030303;
2871
+ --color-muted: #3f3f3f;
2872
+ --color-primary: #1b388a;
2873
+ --color-secondary: #3f3f3f;
2874
+ --color-rule: #e6e6e6;
2875
+ --color-edge: #737373;
2876
+ --color-base: #f9f9f9;
2877
+ --color-base-2: #fbfbfb;
2878
+ --color-base-3: #fff;
2879
+ --color-code-background: #f9f9f9;
2880
+ --color-code-text: #030303;
2881
+ --color-error: #840111;
2882
+ --color-code-comment: #3f3f3f;
2883
+ --color-code-tag: #3f3e3f;
2884
+ --color-code-name: #6c2927;
2885
+ --color-code-literal: #61320b;
2886
+ --color-code-class: #4e3d02;
2887
+ --color-code-string: #334408;
2888
+ --color-code-support: #114646;
2889
+ --color-code-function: #264061;
2890
+ --color-code-keyword: #4f345b;
2891
+ --color-code-meta: #513933;
2892
+ --color-code-added-background: #d6f0d6;
2893
+ --color-code-removed-background: #fedbda;
2894
+ }
2895
+
2896
+ @media (prefers-color-scheme: dark) {
2897
+ :root[data-scheme="ink"]:not([data-mode="light"]) {
2898
+ --color-body: #0d0d0d;
2899
+ --color-text: #f5f5f5;
2900
+ --color-muted: #c2c2c2;
2901
+ --color-primary: #aec8fe;
2902
+ --color-secondary: #c2c2c2;
2903
+ --color-rule: #1e1e1e;
2904
+ --color-edge: #7f7f7f;
2905
+ --color-base: #151515;
2906
+ --color-base-2: #151515;
2907
+ --color-base-3: #1d1d1d;
2908
+ --color-code-background: #151515;
2909
+ --color-code-text: #f5f5f5;
2910
+ --color-error: #ffaaa2;
2911
+ --color-code-comment: #c2c2c2;
2912
+ --color-code-tag: #c1c0c0;
2913
+ --color-code-name: #fcaba4;
2914
+ --color-code-literal: #edb48d;
2915
+ --color-code-class: #d4bf86;
2916
+ --color-code-string: #b1c88c;
2917
+ --color-code-support: #96cac9;
2918
+ --color-code-function: #a4c3eb;
2919
+ --color-code-keyword: #d4b5e3;
2920
+ --color-code-meta: #d8bab2;
2921
+ --color-code-added-background: #213622;
2922
+ --color-code-removed-background: #442727;
2923
+ }
2924
+ }
2925
+
2926
+ :root[data-scheme="ink"][data-mode="dark"] {
2927
+ --color-body: #0d0d0d;
2928
+ --color-text: #f5f5f5;
2929
+ --color-muted: #c2c2c2;
2930
+ --color-primary: #aec8fe;
2931
+ --color-secondary: #c2c2c2;
2932
+ --color-rule: #1e1e1e;
2933
+ --color-edge: #7f7f7f;
2934
+ --color-base: #151515;
2935
+ --color-base-2: #151515;
2936
+ --color-base-3: #1d1d1d;
2937
+ --color-code-background: #151515;
2938
+ --color-code-text: #f5f5f5;
2939
+ --color-error: #ffaaa2;
2940
+ --color-code-comment: #c2c2c2;
2941
+ --color-code-tag: #c1c0c0;
2942
+ --color-code-name: #fcaba4;
2943
+ --color-code-literal: #edb48d;
2944
+ --color-code-class: #d4bf86;
2945
+ --color-code-string: #b1c88c;
2946
+ --color-code-support: #96cac9;
2947
+ --color-code-function: #a4c3eb;
2948
+ --color-code-keyword: #d4b5e3;
2949
+ --color-code-meta: #d8bab2;
2950
+ --color-code-added-background: #213622;
2951
+ --color-code-removed-background: #442727;
2952
+ }
2953
+
2468
2954
  @media (forced-colors: active) {
2469
2955
  .search-form button, .comment-respond .form-submit button, .comment-respond .form-submit input[type="submit"] {
2470
2956
  border: 1px solid buttontext;
@@ -1,9 +1,31 @@
1
1
  {
2
2
  "name": "Default",
3
3
  "kind": "site",
4
- "description": "The theme that ships with Geekity: Nunjucks and one stylesheet compiled from Tailwind, in the Paper design, and the layer every other theme is laid over.",
4
+ "description": "The theme that ships with Geekity CMS: Nunjucks and one stylesheet compiled from Tailwind, in the Paper design, and the layer every other theme is laid over.",
5
5
  "colorScheme": "light dark",
6
6
  "themeColor": { "light": "#faf7f2", "dark": "#171412" },
7
+ "schemes": [
8
+ { "name": "paper", "label": "Paper", "themeColor": { "light": "#faf7f2", "dark": "#171412" } },
9
+ { "name": "slate", "label": "Slate", "themeColor": { "light": "#f4f7fb", "dark": "#12161c" } },
10
+ {
11
+ "name": "forest",
12
+ "label": "Forest",
13
+ "themeColor": { "light": "#f5f7ed", "dark": "#0f1912" }
14
+ },
15
+ { "name": "plum", "label": "Plum", "themeColor": { "light": "#fbf3fa", "dark": "#1b121d" } },
16
+ { "name": "ocean", "label": "Ocean", "themeColor": { "light": "#eef9fb", "dark": "#08191f" } },
17
+ { "name": "ink", "label": "Ink", "themeColor": { "light": "#ffffff", "dark": "#0d0d0d" } }
18
+ ],
19
+ "fonts": {
20
+ "heading": {
21
+ "label": "Headings",
22
+ "fallback": "'Iowan Old Style', 'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, serif"
23
+ },
24
+ "body": {
25
+ "label": "Body text",
26
+ "fallback": "'Iowan Old Style', 'Palatino Linotype', Palatino, 'Book Antiqua', Georgia, serif"
27
+ }
28
+ },
7
29
  "areas": [
8
30
  { "name": "primary", "label": "Site menu" },
9
31
  { "name": "footer", "label": "Footer links" }