This website uses Markdown and Jekyll to format posts. Markdown is commonly used for formatting text on the web, and is used on websites such as Github, Reddit, Stack Overflow, and even Discord.
Here's a quick overview of Markdown:
This is a heading¶
This is a subheading¶
This is a sub-subheading¶
This is a sub-sub-subheading¶
This is a paragraph. You can even make text bold or italic.
Here's a link to Google. Here's a picture of the dino from the game
: {% endhighlight %} 
Github¶
This website is hosted on Github Pages, which is a free service that allows you to host static websites. This means that edits on the repository will be reflected on the website. You should familiarize yourself with terms such as commit, pull request, and merge before making any changes to the website.
Posts¶
In order to post a new blog post, create a new file in the _posts directory. Jekyll requires blog post files to be named according to the following format:
YEAR-MONTH-DAY-title.md
Where YEAR is a four-digit number, MONTH and DAY are both two-digit numbers, and md is the file extension representing the format used in the file (markdown). After that, include the necessary front matter. Here's an example:
{% highlight markdown %}¶
layout: post title: "Operating the Website" date: 2023-06-14 15:46:38 -0700 categories: team author: James Ding
{% endhighlight %}
Front matter tells Jekyll basic information about any page. As you can see here, a post only requires a layout, title, date, categories, and author.
| Front Matter | Description |
|---|---|
layout | The layout to use for the page. This is usually post for blog posts. |
title | The title of the page. |
date | The date the page was published. Military time (24H format), YYYY-MM-DD HH:MM:SS ZONE format |
categories | The category of the post. In most cases, it will be team, mentor, sponsor, or newsletter. |
author | The author of the post. |
Note: A common solution to articles not showing up on the website is to check the date. If the date is in the future, the article will not show up on the website.
Take a look at the source for this post to get an idea about how it works.
Updating Content¶
Updating content on the website is pretty straight forward. Generally, you would want to release updates every season on sponsors, resources, and media.
Updating Sponsors¶
To update sponsors, edit the sponsors.md file in the root directory. The file is formatted in Markdown, but includes special elements known as includes.
Think about includes as a special function that takes in parameters and outputs HTML. In most cases to display sponsors, you would need the image, name, description, and link to the sponsor.
Here's an example of an include: {% highlight html %} {% raw %}{% include gold-ram-sponsor.html name="BAE Systems" img_url="/assets/sponsors/bae.svg" content="BAE Systems is a global defense, aerospace, and security company that provides advanced technology and services to customers worldwide." url="https://www.baesystems.com/" %}{% endraw %}
Notice how the arguments, name, img_url, content, and url are all passed in as parameters.
| Parameter | Description |
|---|---|
name | The name of the sponsor |
img_url | The URL to the image of the sponsor |
content | The description of the sponsor |
url | The URL to the sponsor's website |
In order to get the sponsor's image to show properly, place image files (PNG, JPG, JPEG, SVG) in the assets/sponsors folder. Other than that, you should be good to go!
Updating Members¶
Updating members is a slightly more complicated and time consuming process. In order to update members, you need to edit individual markdown files in the _mentors, _leadership, _members, and _alumni directories.
Mentors¶
Mentors have the following attributes. Note that most attributes are optional, but it is recommended to fill out as much as possible.
| Front Matter | Description |
|---|---|
profile_pic | URL or path to the picture of a mentor. If not specified, the default avatar will be used |
name | The name of the mentor (required) |
position | The position of the mentor (job or team) |
job | The company the mentor works at |
email | The mentor's email address |
year_started | The year the mentor started mentoring the team |
year_ended | The year the mentor stopped mentoring the team |
tags | A list of tags that describe which skills a mentor is familiar with |
The content after the front matter is the mentor's biography. This is just standard Markdown.
Leadership & Members¶
Leadership and members have the following attributes. Note that most attributes are optional, but it is recommended to fill out as much as possible.
| Front Matter | Description |
|---|---|
profile_pic | URL or path to the picture of a leadership member. If not specified, the default avatar will be used |
name | The name of the leadership/member (required) |
role | The role of the leadership/member within the team |
graduation_year | The year the leadership/member will graduate (required) |
year_started | The year the leadership/member joined the team |
year_ended | The year the leadership/member left the team |
email | The email of the leadership/member |
tags | A list of tags that describe which skills a leadership/member is familiar with. For leadership, there is the option of CORE, for core leadership position. |
The content after the front matter is the leadership/member's biography. This is just standard Markdown. This is truncated at {{ site.member_bio_length }} characters.
Alumni¶
Alumni have the following attributes. Note that most attributes are optional, but it is recommended to fill out as much as possible.
| Front Matter | Description |
|---|---|
profile_pic | URL or path to the picture of the alumni. If not specified, the default avatar will be used |
name | The name of the alumni (required) |
major | The major of the alumni |
college | The college the alumni attended |
graduation_year | The year the alumni graduated |
roles | A list of roles the alumni had within the team |
The content after the front matter is the alumni's biography. This is just standard Markdown. This is truncated at {{ site.member_bio_length }} characters.