config.yml 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471
  1. backend:
  2. name: git-gateway
  3. branch: master
  4. media_folder: 'static/media'
  5. public_folder: '/media'
  6. collections:
  7. - name: home
  8. label: "Homepage"
  9. folder: 'content/home'
  10. path: '{{slug}}'
  11. # When specifying a path on a folder collection, media_folder defaults to an empty string, so make it explicit.
  12. media_folder: '/static/media'
  13. public_folder: ''
  14. summary: "{{filename}}: {{title}}"
  15. identifier_field: "widget_id"
  16. create: true
  17. fields:
  18. - {label: "Widget Type (https://wowchemy.com/docs/page-builder/)", name: "widget", widget: "string", required: true}
  19. - {label: 'Your reference for this widget (e.g. recent-posts)', name: 'widget_id', widget: 'string', default: 'my-widget-123'}
  20. - {label: "Headless?", name: "headless", widget: "hidden", default: true}
  21. - label: "Widget position"
  22. name: "weight"
  23. widget: "number"
  24. default: 10
  25. valueType: "int"
  26. min: 0
  27. max: 1001
  28. step: 10
  29. - {label: "Title", name: "title", widget: "string", required: false}
  30. - {label: "Subtitle", name: "subtitle", widget: "string", required: false}
  31. - label: "Enabled?"
  32. name: "active"
  33. required: false
  34. widget: "boolean"
  35. default: true
  36. - label: "Widget Style"
  37. name: "design"
  38. widget: "object"
  39. required: false
  40. fields:
  41. - {label: "Columns (options: `1` or `2`)", name: "columns", widget: "string", default: "2", required: false}
  42. - label: "Background"
  43. name: "background"
  44. widget: "object"
  45. required: false
  46. fields:
  47. - {label: 'Solid color', name: 'color', widget: 'color', enableAlpha: true, allowInput: true, required: false}
  48. - {label: 'Gradient start', name: 'gradient_start', widget: 'color', enableAlpha: true, allowInput: true, required: false}
  49. - {label: 'Gradient end', name: 'gradient_end', widget: 'color', enableAlpha: true, allowInput: true, required: false}
  50. - label: "Use a light text color?"
  51. name: "text_color_light"
  52. required: false
  53. widget: "boolean"
  54. default: false
  55. - label: "Image"
  56. name: "image"
  57. widget: "image"
  58. required: false
  59. # When specifying a path on a folder collection, media_folder defaults to an empty string, so make it explicit.
  60. media_folder: '/static/media'
  61. public_folder: ''
  62. media_library:
  63. config:
  64. multiple: false
  65. - label: "Darken the image? (0 is transparent & 1 is opaque)"
  66. name: "image_darken"
  67. widget: "number"
  68. default: 0.0
  69. valueType: "float"
  70. min: 0.0
  71. max: 1.0
  72. step: 0.1
  73. required: false
  74. - {label: "Body", name: "body", widget: "markdown", required: false}
  75. - name: authors
  76. label: Authors
  77. label_singular: Author
  78. folder: 'content/authors'
  79. path: '{{slug}}/_index'
  80. create: true # Allow users to create new documents in this collection
  81. fields: # The fields each document in this collection have
  82. - {label: "Display name (such as your full name)", name: "title", widget: "string"}
  83. - {label: "Position or tagline (such as Professor of AI)", name: "role", widget: "string", required: false}
  84. - label: "Avatar (upload an image named `avatar.jpg/png`)"
  85. name: "avatar_filename"
  86. widget: "image"
  87. default: "avatar"
  88. required: false
  89. media_library:
  90. config:
  91. multiple: false
  92. - {label: "Short biography (shown in author boxes)", name: "bio", widget: "string", required: false}
  93. - {label: "Full biography (shown in About widget)", name: "body", widget: "markdown", required: false}
  94. - label: "Interests (shown in About widget)"
  95. name: "interests"
  96. required: false
  97. widget: "list"
  98. - label: Social links
  99. name: social
  100. required: false
  101. widget: list
  102. fields:
  103. - {label: Link, name: link, widget: string}
  104. - label: Icon pack
  105. name: icon_pack
  106. widget: select
  107. multiple: false
  108. options:
  109. - {label: "None", value: ""}
  110. - {label: "Solid", value: "fas"}
  111. - {label: "Regular", value: "far"}
  112. - {label: "Brand", value: "fab"}
  113. - {label: "Academic", value: "ai"}
  114. - {label: Icon (see https://wowchemy.com/docs/page-builder/#icons), name: icon, widget: string}
  115. - {label: Label (tooltip), name: label, widget: string, required: false}
  116. - label: Display in About widget and...
  117. name: display
  118. widget: object
  119. fields:
  120. - label: "Header (main menu)"
  121. name: "header"
  122. widget: "boolean"
  123. default: false
  124. required: false
  125. - label: "Organizations you belong to or are affiliated with (shown in About widget)"
  126. name: "organizations"
  127. required: false
  128. widget: list
  129. fields:
  130. - {label: Organization, name: name, widget: string, required: true}
  131. - {label: Link, name: url, widget: string, required: false}
  132. - label: "Education"
  133. name: "education"
  134. required: false
  135. widget: object
  136. fields:
  137. - label: "Courses"
  138. name: "courses"
  139. required: false
  140. widget: list
  141. fields:
  142. - {label: Course, name: course, widget: string, required: true}
  143. - {label: Institution, name: institution, widget: string, required: true}
  144. - {label: Year, name: year, widget: number, valueType: int, required: false}
  145. - {label: "Email (to use a Gravatar.com avatar)", name: "email", widget: "string", required: false}
  146. - label: "Super user (is this the primary site user?)"
  147. name: "superuser"
  148. widget: "boolean"
  149. default: false
  150. - label: "User groups (only for organization websites)"
  151. name: "user_groups"
  152. required: false
  153. widget: "list"
  154. - name: posts
  155. label: Posts
  156. label_singular: Post
  157. folder: 'content/post'
  158. path: '{{slug}}/index'
  159. create: true # Allow users to create new documents in this collection
  160. fields: # The fields each document in this collection have
  161. - {label: "Title", name: "title", widget: "string"}
  162. - {label: "Subtitle", name: "subtitle", widget: "string", required: false}
  163. - {label: "Body", name: "body", widget: "markdown"}
  164. - {label: "Publish this page on", name: "date", widget: "datetime"}
  165. - {label: "Summary", name: "summary", widget: "markdown", required: false}
  166. - label: "Draft"
  167. name: "draft"
  168. widget: "boolean"
  169. default: false
  170. required: false
  171. - label: "Featured"
  172. name: "featured"
  173. widget: "boolean"
  174. default: false
  175. required: false
  176. - label: "Authors"
  177. name: "authors"
  178. required: false
  179. widget: "list"
  180. - label: "Tags"
  181. name: "tags"
  182. required: false
  183. widget: "list"
  184. - label: "Categories"
  185. name: "categories"
  186. required: false
  187. widget: "list"
  188. - label: "Projects"
  189. name: "projects"
  190. required: false
  191. widget: "list"
  192. - label: "Featured Image"
  193. name: "image"
  194. required: false
  195. widget: object
  196. fields:
  197. - label: "Upload an image named `featured.jpg/png`"
  198. name: "filename"
  199. widget: "image"
  200. default: "featured"
  201. required: false
  202. media_library:
  203. config:
  204. multiple: false
  205. - {label: Caption, name: caption, widget: string, required: false}
  206. - {label: Description for screen readers, name: alt_text, widget: string, required: false}
  207. - {label: "Where's the focal point in the image? Smart, Center, TopLeft, Top, TopRight, Left, Right, BottomLeft, Bottom, BottomRight.", name: focal_point, widget: string, required: false, default: "Smart"}
  208. - {label: Thumbnail Only?, name: preview_only, widget: boolean, default: false, required: false}
  209. - name: projects
  210. label: Projects
  211. label_singular: Project
  212. folder: 'content/project'
  213. path: '{{slug}}/index'
  214. create: true # Allow users to create new documents in this collection
  215. fields: # The fields each document in this collection have
  216. - {label: "Title", name: "title", widget: "string"}
  217. - {label: "Subtitle", name: "subtitle", widget: "string", required: false}
  218. - {label: "Body", name: "body", widget: "markdown", required: false}
  219. - {label: "Publish this page on", name: "date", widget: "datetime"}
  220. - {label: "Summary", name: "summary", widget: "markdown", required: false}
  221. - label: "Draft"
  222. name: "draft"
  223. widget: "boolean"
  224. default: false
  225. required: false
  226. - label: "Featured"
  227. name: "featured"
  228. widget: "boolean"
  229. default: false
  230. required: false
  231. - label: "Authors"
  232. name: "authors"
  233. required: false
  234. widget: "list"
  235. - label: "Tags"
  236. name: "tags"
  237. required: false
  238. widget: "list"
  239. - label: "Categories"
  240. name: "categories"
  241. required: false
  242. widget: "list"
  243. - {label: "External link (optional - replaces link to project page)", name: "external_link", widget: "string"}
  244. - label: Links
  245. name: links
  246. required: false
  247. widget: list
  248. fields:
  249. - {label: Link, name: url, widget: string}
  250. - {label: Link text, name: name, widget: string, required: false}
  251. - label: Icon pack
  252. name: icon_pack
  253. widget: select
  254. multiple: false
  255. required: false
  256. options:
  257. - {label: "None", value: ""}
  258. - {label: "Solid", value: "fas"}
  259. - {label: "Regular", value: "far"}
  260. - {label: "Brand", value: "fab"}
  261. - {label: "Academic", value: "ai"}
  262. - {label: "Icon (see https://wowchemy.com/docs/page-builder/#icons)", name: icon, widget: string, required: false}
  263. - label: "Featured Image"
  264. name: "image"
  265. required: false
  266. widget: object
  267. fields:
  268. - label: "Upload an image named `featured.jpg/png`"
  269. name: "filename"
  270. widget: "image"
  271. default: "featured"
  272. required: false
  273. media_library:
  274. config:
  275. multiple: false
  276. - {label: Caption, name: caption, widget: string, required: false}
  277. - {label: Description for screen readers, name: alt_text, widget: string, required: false}
  278. - {label: "Where's the focal point in the image? Smart, Center, TopLeft, Top, TopRight, Left, Right, BottomLeft, Bottom, BottomRight.", name: focal_point, widget: string, required: false, default: "Smart"}
  279. - {label: Thumbnail Only?, name: preview_only, widget: boolean, default: false, required: false}
  280. - name: talks
  281. label: Talks
  282. label_singular: Talk
  283. folder: 'content/talk'
  284. path: '{{slug}}/index'
  285. create: true # Allow users to create new documents in this collection
  286. fields: # The fields each document in this collection have
  287. - {label: "Title", name: "title", widget: "string"}
  288. - {label: "Abstract", name: "abstract", widget: "text"}
  289. - {label: "Where", name: "location", widget: "text"}
  290. - {label: "From", name: "date", widget: "datetime"}
  291. - {label: "To", name: "date_end", widget: "datetime", default: ""}
  292. - {label: "All day event?", name: "all_day", widget: "boolean", default: false}
  293. - label: Links/Tickets
  294. name: links
  295. required: false
  296. widget: list
  297. fields:
  298. - {label: Link, name: url, widget: string}
  299. - {label: Link text, name: name, widget: string, required: false}
  300. - label: Icon pack
  301. name: icon_pack
  302. widget: select
  303. multiple: false
  304. required: false
  305. options:
  306. - {label: "None", value: ""}
  307. - {label: "Solid", value: "fas"}
  308. - {label: "Regular", value: "far"}
  309. - {label: "Brand", value: "fab"}
  310. - {label: "Academic", value: "ai"}
  311. - {label: "Icon (see https://wowchemy.com/docs/page-builder/#icons)", name: icon, widget: string, required: false}
  312. - {label: "Event", name: "event", widget: "string"}
  313. - {label: "Event link", name: "event_url", widget: "string"}
  314. - {label: "Publish this page on", name: "publishDate", widget: "datetime"}
  315. - {label: "Markdown slides (reference a deck in 'content/slides/')", name: "slides", widget: "string", required: false}
  316. - label: "Draft"
  317. name: "draft"
  318. widget: "boolean"
  319. default: false
  320. required: false
  321. - label: "Featured"
  322. name: "featured"
  323. widget: "boolean"
  324. default: false
  325. required: false
  326. - label: "Authors"
  327. name: "authors"
  328. required: false
  329. widget: "list"
  330. - label: "Tags"
  331. name: "tags"
  332. required: false
  333. widget: "list"
  334. - label: "Categories"
  335. name: "categories"
  336. required: false
  337. widget: "list"
  338. - label: "Projects (reference projects in 'content/project/')"
  339. name: "projects"
  340. required: false
  341. widget: "list"
  342. - label: "Featured Image"
  343. name: "image"
  344. required: false
  345. widget: object
  346. fields:
  347. - label: "Upload an image named `featured.jpg/png`"
  348. name: "filename"
  349. widget: "image"
  350. default: "featured"
  351. required: false
  352. media_library:
  353. config:
  354. multiple: false
  355. - {label: Caption, name: caption, widget: string, required: false}
  356. - {label: Description for screen readers, name: alt_text, widget: string, required: false}
  357. - {label: "Where's the focal point in the image? Smart, Center, TopLeft, Top, TopRight, Left, Right, BottomLeft, Bottom, BottomRight.", name: focal_point, widget: string, required: false, default: "Smart"}
  358. - {label: Thumbnail Only?, name: preview_only, widget: boolean, default: false, required: false}
  359. - {label: "Details", name: "body", widget: "markdown", required: false}
  360. - name: publications
  361. label: Publications
  362. label_singular: Publication
  363. folder: 'content/publication'
  364. path: '{{slug}}/index'
  365. create: true # Allow users to create new documents in this collection
  366. fields: # The fields each document in this collection have
  367. - { label: "Title", name: "title", widget: "string" }
  368. - { label: "Subtitle", name: "subtitle", widget: "string", required: false }
  369. - label: "Publication type"
  370. name: "publication_types"
  371. required: true
  372. default: ["0"]
  373. widget: "select"
  374. # Can only have 1 pub. type assigned, but need `multiple` option to save as a Hugo taxonomy list.
  375. multiple: true
  376. options:
  377. - { label: "Uncategorized", value: "0" }
  378. - { label: "Conference paper", value: "1" }
  379. - { label: "Journal article", value: "2" }
  380. - { label: "Preprint / Working Paper", value: "3" }
  381. - { label: "Report", value: "4" }
  382. - { label: "Book", value: "5" }
  383. - { label: "Book section", value: "6" }
  384. - { label: "Thesis", value: "7" }
  385. - { label: "Patent", value: "8" }
  386. - label: "Authors"
  387. name: "authors"
  388. required: true
  389. widget: "list"
  390. - label: "Author Notes (contributions or affiliations for each author)"
  391. name: "author_notes"
  392. required: false
  393. widget: "list"
  394. - { label: "DOI", name: "doi", widget: "string", required: false }
  395. - { label: "Publication", name: "publication", widget: "string", required: false }
  396. - { label: "Publication (abbreviated)", name: "publication_short", widget: "string", required: false }
  397. - { label: "Abstract", name: "abstract", widget: "text", required: false }
  398. - label: "Draft"
  399. name: "draft"
  400. widget: "boolean"
  401. default: false
  402. required: false
  403. - label: "Featured"
  404. name: "featured"
  405. widget: "boolean"
  406. default: false
  407. required: false
  408. - label: "Tags"
  409. name: "tags"
  410. required: false
  411. widget: "list"
  412. - label: "Categories"
  413. name: "categories"
  414. required: false
  415. widget: "list"
  416. - label: "Projects"
  417. name: "projects"
  418. required: false
  419. widget: "list"
  420. - {label: "Markdown slides (reference a deck in 'content/slides/')", name: "slides", widget: "string", required: false}
  421. - label: "Featured Image"
  422. name: "image"
  423. required: false
  424. widget: object
  425. fields:
  426. - label: "Upload an image named `featured.jpg/png`"
  427. name: "filename"
  428. widget: "image"
  429. default: "featured"
  430. required: false
  431. media_library:
  432. config:
  433. multiple: false
  434. - { label: Caption, name: caption, widget: string, required: false }
  435. - { label: Description for screen readers, name: alt_text, widget: string, required: false }
  436. - { label: "Where's the focal point in the image? Smart, Center, TopLeft, Top, TopRight, Left, Right, BottomLeft, Bottom, BottomRight.", name: focal_point, widget: string, required: false, default: "Smart" }
  437. - { label: Thumbnail Only?, name: preview_only, widget: boolean, default: false, required: false }
  438. - { label: "Summary (shortened abstract)", name: "summary", widget: "text", required: false }
  439. - {label: "Details", name: "body", widget: "markdown", required: false}
  440. - { label: "Publish this page on", name: "date", widget: "datetime" }
  441. - name: pages
  442. label: "Pages"
  443. files:
  444. - file: "content/privacy.md"
  445. label: "Privacy Policy"
  446. name: "privacy"
  447. fields:
  448. - {label: "Title", name: "title", widget: "string"}
  449. - {label: "Publish Date", name: "date", widget: "datetime"}
  450. - {label: "Subtitle", name: "subtitle", widget: "string", required: false}
  451. - {label: "Summary", name: "summary", widget: "markdown", required: false}
  452. - label: "Draft"
  453. name: "draft"
  454. required: false
  455. widget: "boolean"
  456. default: false
  457. - {label: "Body", name: "body", widget: "markdown"}
  458. - file: "content/terms.md"
  459. label: "Terms"
  460. name: "terms"
  461. fields:
  462. - {label: "Title", name: "title", widget: "string"}
  463. - {label: "Publish Date", name: "date", widget: "datetime"}
  464. - {label: "Subtitle", name: "subtitle", widget: "string", required: false}
  465. - {label: "Summary", name: "summary", widget: "markdown", required: false}
  466. - label: "Draft"
  467. name: "draft"
  468. required: false
  469. widget: "boolean"
  470. default: false
  471. - {label: "Body", name: "body", widget: "markdown"}