How to Contribute to this website

The CRLab website needs you to keep it up-to-date with the latest information about the lab. This wiki page will walk you through everything you need to know!

To get started working on this website

  1. Install Hugo (exenteded edition)
  2. Install NodeJS
  3. Clone the CRLab repository
  4. Start a local development server with hugo server and visit http://localhost:1313
  5. Changes pushed to the gh-pages branch will be automatically build by the CI/CD pipeline and will display on the website in a couple of minutes

Team Members

The team page is a space for CRLab staff & researchers to write a bio on themselves. To create a new profile, upload a markdown file and profile image to the /content/team/ directory.

Each markdown file must include the mandatory front matter.
ParameterMandatory/ OptionalDescription
nameMandatoryFull name of the team member. This must be unique and is used to link authors with projects & wiki content
weightOptionalAlters the display order of the team member page (normally alphabetical)
params.imgMandatoryProfile photo. Photo must be in the /content/team/ directory
params.typeMandatoryMust be staff or research-student to show on the team page, otherwise free text
params.roleOptionalOverwrites the Staff or Research Student roles with custom text
params.linkedinOptionalLinkedIn username. Shows LinkedIn icon
params.orcidOptionalOrcId. Shows OrcId icon
params.emailOptionalEmail address. Shows email icon

Example with all fields set

---
name: Damith Herath
weight: 1
params:
    role: Founder/Lead Collaborative Robotics Lab
    type: staff
    img: damith-herath.jpg
    linkedin: damithherath
    orcid: 0000-0002-7509-5265
    email: damith.herath@canberra.edu.au
---

Developing Team Member Pages

FilePurpose
/layouts/_default/team.htmlRenders the team page
/layouts/team/single.htmlRenders the team member page and finds the members projects
/layouts/partials/content/team.htmlTeam introduction text
/layouts/partials/bio/bio.htmlRenders each team member card

Project Pages

The projects page is a place to showcast the CRLab’s robotics research projects.

To create a new project, create a new markdown file in the /content/projects/ directory.

Each markdown file must include the mandatory front matter.
ParameterMandatory/ OptionalDescription
titleMandatoryTitle of the projects. Is used throughout all project cards
summaryOptionalOverwrites the automatically generated summary if present. Is shown on project cards
dateOptionalWill show as a date on the card. See Hugo Dates
authorOptionalHighly recommended. Name must exactly match the team member name to show on the team members page. Multiple authors can be comma seperated
params.imgOptionalHighly recommended. Renders in project cards and on the project page as the hero image. Must be the full path to the image (i.e. if image.png is in the /content/projects/ folder, the image path is /projects/image.png)

Developing Project Pages

FilePurpose
/content/projects/_index.mdContent shown above the project list on the projects page
/layouts/_default/single.htmlRenders the project page and includes the author block at the bottom
/layouts/partials/bio/bio-inline.htmlRenders the author bio card
/layouts/partials/page.htmlRenders the project card (as shown on the projects page)

Wiki Pages

Same as Project Pages but pages are not included on the authors bio page and /content/wiki/_index.md controls the displayed content on the Wiki page.


Other Pages

FilePurpose
/layouts/_default/home.htmlHome page
/layouts/partials/content/partnerships.htmlPartnerships section of homepage (currently not implemented)

Markdown

Markdown pages are rendered by Goldmark. See the Markdown Guide for markdown basics.

Some additional shortcodes are supported:

Error, Warning, Note Blocks

This is an error
{{<error>}}
**This is an error**
{{</error>}}
This is an error
{{<warning>}}
**This is a warning**
{{</warning>}}
This is an error
{{<note>}}
**This is a note**
{{</note>}}

Raw HTML

To include raw html (e.g. iframes), wrap it in a rawhtml block.

{{<rawhtml>}}
...
{{</rawhtml>}}