Skip to content

UQComputingSociety/website

Repository files navigation

UQCS Website

The website of The University of Queensland Computing Society.

This site is built on a verison of the jamstack using:

  • Hugo Templating
  • Bulma CSS Framework
  • Font Awesome Icons
  • Custom CSS and JS

Which is compiled to static files using Github Actions and then hosted Github Pages.

Contributing

The UQCS site is a place to show off both the club itself, and the work of its members. You can contribute ideas, bugs or suggestions by clicking the Issues tab above and creating a new issue.

You can contribute code by forking the repository, making your changes and creating a pull request. It's encouraged to create an issue for the changes you plan on making in your pull request and you should mention the IDs of any issues you work on in your pull request description.

For more information checkout the CONTRIBUTING.md

Want help with creating a pull request? No problem! Email us at contact@uqcs.org.au for help, or ask in Discord.

Getting Setup

  1. Install Git.
  2. Install Hugo (make sure to get the extended version).
  3. Open your preferred terminal.
  4. Run git clone https://github.com/UQComputingSociety/website.git
  5. Run cd website
  6. Run hugo server -D
  7. Open your preferred browser.
  8. Navigate to http://localhost:1313/
WSL

A couple extra steps are needed for running hugo on WSL. Do steps 1-5, then:

  1. In a windows terminal, use wsl -t $name to terminate any WSL instances except the one you want to run hugo on.
  2. Run wsl hostname -I to find the IP address of that WSL instance.
  3. Run hugo server -D --bind $ip --baseURL=$ip instead of just hugo server -D
  4. Open your preferred browser.
  5. Navigate to http://$ip:1313/

Showcasing Your Project

Have you built something cool you want to show off to the world? It's easy to publish your project to the UQCS Showcase.

  1. Fork this repository so you can make changes.
  2. Follow the "Getting Setup" instructions above, replacing the URL with your fork's URL.
  3. Add your project to content/showcase/_index.html by copying the format of an existing showcase-item. New projects should be added to the top.
  4. Modify the caption text with a short blurb for your project. If you want to, you can use basic HTML in this field.
  5. Add an image by adding it to the static/img/media/showcase/ folder then specifying the src attribute. Images should be at least 1000×750 (larger images with the same aspect ratio are also fine).
  6. Link your project's GitHub repository or website using the link attribute.
  7. Preview the showcase page at http://localhost:1313/showcase/ and make sure you're happy with how it looks.
  8. Create a pull request by following the steps at CONTRIBUTING.md (creating a new issue isn't required for showcase items).
  9. Once merged, you should be able to see your project at https://uqcs.org/showcase/!

Google Calendar API Key

The /events calendar uses FullCalendar.js and fetches events from Google Calendar. To do this, it needs a Google API key. Currently, the production key is specified in events/_index.html but you will need your own key to test locally.

  1. Go to https://console.developers.google.com/apis/dashboard.
  2. If you haven't done so already, sign up with a Google account and create a new project. (UQCS committee can sign in with the Google account and use the "UQCS Website Calendar" project.)
  3. If you created a new project, enable the Google Calendar API from within APIs & Services → Library.
  4. Go to APIs & Services → Credentials and create new credentials. This page also shows existing API keys.
  5. Copy the key use it where needed. Optionally, you can restrict this key to specific websites and APIs.

Licensing

This project is licensed under the Apache License 2.0.