config.yml 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461
  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://sourcethemes.com/academic/docs/page-builder/#icons), name: icon, widget: string}
  115. - label: "Organizations you belong to or are affiliated with (shown in About widget)"
  116. name: "organizations"
  117. required: false
  118. widget: list
  119. fields:
  120. - {label: Organization, name: name, widget: string, required: true}
  121. - {label: Link, name: url, widget: string, required: false}
  122. - label: "Education"
  123. name: "education"
  124. required: false
  125. widget: object
  126. fields:
  127. - label: "Courses"
  128. name: "courses"
  129. required: false
  130. widget: list
  131. fields:
  132. - {label: Course, name: course, widget: string, required: true}
  133. - {label: Institution, name: institution, widget: string, required: true}
  134. - {label: Year, name: year, widget: number, valueType: int, required: false}
  135. - {label: "Email (to use a Gravatar.com avatar)", name: "email", widget: "string", required: false}
  136. - label: "Super user (is this the primary site user?)"
  137. name: "superuser"
  138. widget: "boolean"
  139. default: false
  140. - label: "User groups (only for organization websites)"
  141. name: "user_groups"
  142. required: false
  143. widget: "list"
  144. - name: posts
  145. label: Posts
  146. label_singular: Post
  147. folder: 'content/post'
  148. path: '{{slug}}/index'
  149. create: true # Allow users to create new documents in this collection
  150. fields: # The fields each document in this collection have
  151. - {label: "Title", name: "title", widget: "string"}
  152. - {label: "Subtitle", name: "subtitle", widget: "string", required: false}
  153. - {label: "Body", name: "body", widget: "markdown"}
  154. - {label: "Publish this page on", name: "date", widget: "datetime"}
  155. - {label: "Summary", name: "summary", widget: "markdown", required: false}
  156. - label: "Draft"
  157. name: "draft"
  158. widget: "boolean"
  159. default: false
  160. required: false
  161. - label: "Featured"
  162. name: "featured"
  163. widget: "boolean"
  164. default: false
  165. required: false
  166. - label: "Authors"
  167. name: "authors"
  168. required: false
  169. widget: "list"
  170. - label: "Tags"
  171. name: "tags"
  172. required: false
  173. widget: "list"
  174. - label: "Categories"
  175. name: "categories"
  176. required: false
  177. widget: "list"
  178. - label: "Projects"
  179. name: "projects"
  180. required: false
  181. widget: "list"
  182. - label: "Featured Image"
  183. name: "image"
  184. required: false
  185. widget: object
  186. fields:
  187. - label: "Upload an image named `featured.jpg/png`"
  188. name: "filename"
  189. widget: "image"
  190. default: "featured"
  191. required: false
  192. media_library:
  193. config:
  194. multiple: false
  195. - {label: Caption, name: caption, widget: string, required: false}
  196. - {label: Description for screen readers, name: alt_text, widget: string, required: false}
  197. - {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"}
  198. - {label: Thumbnail Only?, name: preview_only, widget: boolean, default: false, required: false}
  199. - name: projects
  200. label: Projects
  201. label_singular: Project
  202. folder: 'content/project'
  203. path: '{{slug}}/index'
  204. create: true # Allow users to create new documents in this collection
  205. fields: # The fields each document in this collection have
  206. - {label: "Title", name: "title", widget: "string"}
  207. - {label: "Subtitle", name: "subtitle", widget: "string", required: false}
  208. - {label: "Body", name: "body", widget: "markdown", required: false}
  209. - {label: "Publish this page on", name: "date", widget: "datetime"}
  210. - {label: "Summary", name: "summary", widget: "markdown", required: false}
  211. - label: "Draft"
  212. name: "draft"
  213. widget: "boolean"
  214. default: false
  215. required: false
  216. - label: "Featured"
  217. name: "featured"
  218. widget: "boolean"
  219. default: false
  220. required: false
  221. - label: "Authors"
  222. name: "authors"
  223. required: false
  224. widget: "list"
  225. - label: "Tags"
  226. name: "tags"
  227. required: false
  228. widget: "list"
  229. - label: "Categories"
  230. name: "categories"
  231. required: false
  232. widget: "list"
  233. - {label: "External link (optional - replaces link to project page)", name: "external_link", widget: "string"}
  234. - label: Links
  235. name: links
  236. required: false
  237. widget: list
  238. fields:
  239. - {label: Link, name: url, widget: string}
  240. - {label: Link text, name: name, widget: string, required: false}
  241. - label: Icon pack
  242. name: icon_pack
  243. widget: select
  244. multiple: false
  245. required: false
  246. options:
  247. - {label: "None", value: ""}
  248. - {label: "Solid", value: "fas"}
  249. - {label: "Regular", value: "far"}
  250. - {label: "Brand", value: "fab"}
  251. - {label: "Academic", value: "ai"}
  252. - {label: "Icon (see https://sourcethemes.com/academic/docs/page-builder/#icons)", name: icon, widget: string, required: false}
  253. - label: "Featured Image"
  254. name: "image"
  255. required: false
  256. widget: object
  257. fields:
  258. - label: "Upload an image named `featured.jpg/png`"
  259. name: "filename"
  260. widget: "image"
  261. default: "featured"
  262. required: false
  263. media_library:
  264. config:
  265. multiple: false
  266. - {label: Caption, name: caption, widget: string, required: false}
  267. - {label: Description for screen readers, name: alt_text, widget: string, required: false}
  268. - {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"}
  269. - {label: Thumbnail Only?, name: preview_only, widget: boolean, default: false, required: false}
  270. - name: talks
  271. label: Talks
  272. label_singular: Talk
  273. folder: 'content/talk'
  274. path: '{{slug}}/index'
  275. create: true # Allow users to create new documents in this collection
  276. fields: # The fields each document in this collection have
  277. - {label: "Title", name: "title", widget: "string"}
  278. - {label: "Abstract", name: "abstract", widget: "text"}
  279. - {label: "Where", name: "location", widget: "text"}
  280. - {label: "From", name: "date", widget: "datetime"}
  281. - {label: "To", name: "date_end", widget: "datetime", default: ""}
  282. - {label: "All day event?", name: "all_day", widget: "boolean", default: false}
  283. - label: Links/Tickets
  284. name: links
  285. required: false
  286. widget: list
  287. fields:
  288. - {label: Link, name: url, widget: string}
  289. - {label: Link text, name: name, widget: string, required: false}
  290. - label: Icon pack
  291. name: icon_pack
  292. widget: select
  293. multiple: false
  294. required: false
  295. options:
  296. - {label: "None", value: ""}
  297. - {label: "Solid", value: "fas"}
  298. - {label: "Regular", value: "far"}
  299. - {label: "Brand", value: "fab"}
  300. - {label: "Academic", value: "ai"}
  301. - {label: "Icon (see https://sourcethemes.com/academic/docs/page-builder/#icons)", name: icon, widget: string, required: false}
  302. - {label: "Event", name: "event", widget: "string"}
  303. - {label: "Event link", name: "event_url", widget: "string"}
  304. - {label: "Publish this page on", name: "publishDate", widget: "datetime"}
  305. - {label: "Markdown slides (reference a deck in 'content/slides/')", name: "slides", widget: "string", required: false}
  306. - label: "Draft"
  307. name: "draft"
  308. widget: "boolean"
  309. default: false
  310. required: false
  311. - label: "Featured"
  312. name: "featured"
  313. widget: "boolean"
  314. default: false
  315. required: false
  316. - label: "Authors"
  317. name: "authors"
  318. required: false
  319. widget: "list"
  320. - label: "Tags"
  321. name: "tags"
  322. required: false
  323. widget: "list"
  324. - label: "Categories"
  325. name: "categories"
  326. required: false
  327. widget: "list"
  328. - label: "Projects (reference projects in 'content/project/')"
  329. name: "projects"
  330. required: false
  331. widget: "list"
  332. - label: "Featured Image"
  333. name: "image"
  334. required: false
  335. widget: object
  336. fields:
  337. - label: "Upload an image named `featured.jpg/png`"
  338. name: "filename"
  339. widget: "image"
  340. default: "featured"
  341. required: false
  342. media_library:
  343. config:
  344. multiple: false
  345. - {label: Caption, name: caption, widget: string, required: false}
  346. - {label: Description for screen readers, name: alt_text, widget: string, required: false}
  347. - {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"}
  348. - {label: Thumbnail Only?, name: preview_only, widget: boolean, default: false, required: false}
  349. - {label: "Details", name: "body", widget: "markdown", required: false}
  350. - name: publications
  351. label: Publications
  352. label_singular: Publication
  353. folder: 'content/publication'
  354. path: '{{slug}}/index'
  355. create: true # Allow users to create new documents in this collection
  356. fields: # The fields each document in this collection have
  357. - { label: "Title", name: "title", widget: "string" }
  358. - { label: "Subtitle", name: "subtitle", widget: "string", required: false }
  359. - label: "Publication type"
  360. name: "publication_types"
  361. required: true
  362. default: ["0"]
  363. widget: "select"
  364. # Can only have 1 pub. type assigned, but need `multiple` option to save as a Hugo taxonomy list.
  365. multiple: true
  366. options:
  367. - { label: "Uncategorized", value: "0" }
  368. - { label: "Conference paper", value: "1" }
  369. - { label: "Journal article", value: "2" }
  370. - { label: "Preprint / Working Paper", value: "3" }
  371. - { label: "Report", value: "4" }
  372. - { label: "Book", value: "5" }
  373. - { label: "Book section", value: "6" }
  374. - { label: "Thesis", value: "7" }
  375. - { label: "Patent", value: "8" }
  376. - label: "Authors"
  377. name: "authors"
  378. required: true
  379. widget: "list"
  380. - label: "Author Notes (contributions or affiliations for each author)"
  381. name: "author_notes"
  382. required: false
  383. widget: "list"
  384. - { label: "DOI", name: "doi", widget: "string", required: false }
  385. - { label: "Publication", name: "publication", widget: "string", required: false }
  386. - { label: "Publication (abbreviated)", name: "publication_short", widget: "string", required: false }
  387. - { label: "Abstract", name: "abstract", widget: "text", required: false }
  388. - label: "Draft"
  389. name: "draft"
  390. widget: "boolean"
  391. default: false
  392. required: false
  393. - label: "Featured"
  394. name: "featured"
  395. widget: "boolean"
  396. default: false
  397. required: false
  398. - label: "Tags"
  399. name: "tags"
  400. required: false
  401. widget: "list"
  402. - label: "Categories"
  403. name: "categories"
  404. required: false
  405. widget: "list"
  406. - label: "Projects"
  407. name: "projects"
  408. required: false
  409. widget: "list"
  410. - {label: "Markdown slides (reference a deck in 'content/slides/')", name: "slides", widget: "string", required: false}
  411. - label: "Featured Image"
  412. name: "image"
  413. required: false
  414. widget: object
  415. fields:
  416. - label: "Upload an image named `featured.jpg/png`"
  417. name: "filename"
  418. widget: "image"
  419. default: "featured"
  420. required: false
  421. media_library:
  422. config:
  423. multiple: false
  424. - { label: Caption, name: caption, widget: string, required: false }
  425. - { label: Description for screen readers, name: alt_text, widget: string, required: false }
  426. - { 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" }
  427. - { label: Thumbnail Only?, name: preview_only, widget: boolean, default: false, required: false }
  428. - { label: "Summary (shortened abstract)", name: "summary", widget: "text", required: false }
  429. - {label: "Details", name: "body", widget: "markdown", required: false}
  430. - { label: "Publish this page on", name: "date", widget: "datetime" }
  431. - name: pages
  432. label: "Pages"
  433. files:
  434. - file: "content/privacy.md"
  435. label: "Privacy Policy"
  436. name: "privacy"
  437. fields:
  438. - {label: "Title", name: "title", widget: "string"}
  439. - {label: "Publish Date", name: "date", widget: "datetime"}
  440. - {label: "Subtitle", name: "subtitle", widget: "string", required: false}
  441. - {label: "Summary", name: "summary", widget: "markdown", required: false}
  442. - label: "Draft"
  443. name: "draft"
  444. required: false
  445. widget: "boolean"
  446. default: false
  447. - {label: "Body", name: "body", widget: "markdown"}
  448. - file: "content/terms.md"
  449. label: "Terms"
  450. name: "terms"
  451. fields:
  452. - {label: "Title", name: "title", widget: "string"}
  453. - {label: "Publish Date", name: "date", widget: "datetime"}
  454. - {label: "Subtitle", name: "subtitle", widget: "string", required: false}
  455. - {label: "Summary", name: "summary", widget: "markdown", required: false}
  456. - label: "Draft"
  457. name: "draft"
  458. required: false
  459. widget: "boolean"
  460. default: false
  461. - {label: "Body", name: "body", widget: "markdown"}