Skip to content

Adding Components

Nathan Hui edited this page Sep 18, 2024 · 8 revisions

Adding Publications

  1. Open _bibliography/publications.bib in JabRef.
  2. Add the new publication using the correct classification
    1. Books should use @Book
    2. PhD theses should @PhdThesis with type set to PhD Thesis
    3. MS theses should use @MastersThesis with type set to MS Thesis
    4. Patents should use @Patent with number set to the full US Patent number (e.g. US0123456789)
    5. Book chapters should use @InBook
    6. Conference papers should use @InProceedings
    7. Journal articles should use @Article
    8. All papers should include their abstract and keywords.
    9. All papers should include their DOI reference (if available).
    10. Where possible, include the non-DOI permalink to the article in the url field.
    11. If a copy is available on arXiV, please include the arXiV identifier in the preprint field.
  3. Commit the updated .bib file and push to main

Adding Expeditions

  1. Open _data/expeditions.yml in VS Code.
  2. At the end of the file, add the following:
- project: {project_name}
  location: {expedition_location}
  date: {YYYY-MM}
  year: {YYYY}
  month: {MMMM}
  lead:
    - {lead1}
    - {lead2}
  people:
    - {member1}
    - {member2}
    - {member3}
# below fields are optional
  link: {URL to blog post/news about expedition}
  media:
    - {public links to published image/video galleries}
  data:
    - {links to dataset, can be private}
  properties:
  # for internal use only, see developers for more information
  1. Commit the updated .yml file and push.

Project Pages

To make a section for a project, one must do the following:

  • In projects/projects.md add a new json object to the blurbs array. This looks like:
 - photo: "assets/projects-new_project-photo.png"
   text: "Description of project"
   project_name: "Name of Project"
   link: "/insert-project-link"

Where photo is the filepath to the project's blurb photo, text is a short description of the project, the project_name is the name of the project, and link is the path in the url the project will live

  • Create a new markdown file called insert_name_of_project.md. At the top add the following head:
---
layout: project
permalink: /insert-project-link
title: Name of Project
category: project-categories
enable_nav: false
---

Where permalink is the same value as link in projects.md, title is whatever you want to call the project, category is the tag representing your project (note: this should be the category used in future news posts associated with the project)

Set enable_nav to false for now and you have the minimum needed to start creating your project

OPTIONAL: Add a gallery and project post feed

Some projects have the added feature of including a news feed containing posts about that project and a gallery to show up some important photos from diffrent events in the project. To add these pages do the following:

  • Set enable_nav to true in your project.md file
  • Add two new files: insert_name_of_project-media.md and insert_name_of_project-updates.md
  • In insert_name_of_project-media.md add the following:
---
layout: gallery
permalink: /insert-project-link
title: Name of Project
category: project-categories
enable_nav: true
grid: true
media: 
 - assets/project-photo-1.png
 - assets/project-photo-2.png
 - assets/project-photo-3.png
 - ...
---

Here there are two new paramters that diffrent from insert_name_of_project.md. ALL OTHER PARAMETERS SHOULD BE IDENTICAL TO insert_name_of_project.md

  • layout: set this to gallery
  • grid: true/false this controls the style of the gallery. Please see [Galleries](### Galleries)
  • media: an array of file paths to images you want to include

Your gallery page on the website will be found at /insert-project-link/media

  • Next go to insert_name_of_project-updates.md and add the following text at the top of the file:
---
layout: post_feed
permalink: /insert-project-link
title: Name of Project
category: project-categories
enable_nav: true
---

Fill in permalink, title, and category with the same values used in the respective variables for insert_name_of_project.md and insert_name_of_project-media.md. Keep layout as post_feed.

Your post feed page on the website will be found at /insert-project-link/project-updates

OPTIONAL: Add onboarding papers

  • Add your bib file for your project to _bibliography/onboarding_papers
  • In onboarding_papers.md, add the following to the front matter's paper list:
---
- bib_file: name_of_bib_file
  name: Project Name
  url: /insert-project-link
---

url MUST be the same as permalink on your project

Project Navigation Bar

ONLY USED FOR PROJECT LAYOUTS. MUST NOT BE USED IN MARKDOWN FILES.

Creates the nav bar for project pages, namely the main project make, the project's update page, and the project's gallery page.

Params:

  • title: Name of main page
  • url: the url of the project. There are two ways to get this information
    • {% assign project_url = page.permalink | append: "/" %} if on main project page
    • url=page.dir this will select everything between the domain name and the file page in url
  • enable_nav: true or false, some projects don't have a navbar

Format:

{% include project_navigation.html 
    title="INSERT TITLE"
    url=project_url 
    enable_nav=true or false 
%}

Adding blog posts

Create a new file in /_posts with the following name: {year}-{month}-{day}-{hyphenated-title}.md. For example: 2024-05-10-e4e-releases-new-jekyll-website.md.

At the top of the file, add the following:

---
date: {year}-{month}-{day} {hour}:{minute}-{timezone offset}:00
layout: blog-post
title: {title}
categories:
 - news-and-updates
author: {your name}
featuredImage: {relative path to featured image}
tags:
- {additional tags}
---

For example:

---
date: 2024-05-07 21:45-07:00
layout: blog-post
title: Ronan Wallace Awarded Fulbright for Floods of Lubra
categories:
 - news-and-updates
author: Nathan Hui
featuredImage: assets/floods_of_lubra/fieldwork-nepal.jpg
tags:
- floods-of-lubra
- fulbright
---

Add the contents of your blog post after this preable, using the appropriate components.

Commit this and any included images to a new branch (we recommend using the same format as the blob post file name). Request a review from one of the website admins and enable auto merge.

Updating Open Opportunities

  1. Open _data/opportunities.yml
  2. Entries must have the following structure:
- project: {project_name}
  title: {position title}
  description: {multiline string describing project and position}
  required: {optional list of required skills}
  desired: {optional list of desired skills}
  link: {optional link to project webpage}

For example:

- project: Radio Telemetry Tracker
  title: Lead
  description: |
    This is a multiline project description.

    This is still part of the position description, and includes a blank line between the previous line.
  desired:
  - Desired skill 1
  - Desired skill 2
  required:
  - required skill 1
  - required skill 2
  link: /radio-collar-tracker