This is the source code for our homepage.
This README aims to help any club member interested in or tasked with maintaining and updating our website. As it is assumed that most of this is totally new to each new contributor, it tries to document each aspect as thoroughly as possible. If you find that anything is missing or have something extra to add, feel free to add it here, and remember - Google is your friend.
The Adding to the site section attempts to list all the necessary information required to setup and contribute to our website. If you are a new member and would like to contribute, start with that section and it's various resource links, then talk to the committee about contributing.
If the info provided here does not suffice, you can contact anyone from the List of contributors section. Listed there are the names of current and previous contributors to the website and should be able to further assist.
The site is deployed using the free GitHub Pages service and is built right from the contents of this repository. We currently don't have a registered domain, so we simply use the one GitHub has provided, which is https://curtinrobotics.github.io.
The website was started as a test to see whether it would be a viable resource worth the time investment. It aims to be the central hub for the club to share what we are about, what we do, project pages/showcases, events, meeting minutes and agendas, etc. Note: it is still a work in progress and the possible uses and content that it will contain are still being worked out.
If you would like to contribute to this website you should certainly have some experience with the following tools. It isn't too hard to pick up along the way - the entire site was built by learning as we went.
Obviously, we use git and GitHub. This is a version control and collaboration system that allows for multiple people to contribute to a single application effectively. Check out the links below for more information and some tutorials.
- Git SCM - start here for in-depth documentation
- Code School's Try Git - This is
a free course you can do in your browser to learn
git
. - SourceTree - The command-line is by far the
most powerful way to use
git
, but new users may be overwhelmed, if so, try this desktop app instead.
Building a website always involves some knowledge of HTML, JavaScript, and CSS. In broad terms, these control the content, behaviour and appearance of a website. Jekyll natively supports Sass, an extension to CSS so be sure to check out their documentation. The following links should help you out:
- Code School - This site has many free (and paid) lessons on all aspects of designing a website.
- W3 Schools - Various written tutorials for HTML, JavaScript and CSS.
- Sass homepage
We (and GitHub Pages) use Jekyll to generate our website. Jekyll is a framework for converting plain text into static websites. It is powered by Ruby but you won't need to know it to contribute. Check out these links for more information and to setup your environment:
- Jekyll Installation - Read the documentation to understand how Jekyll operates.
- GitHub Pages - Follow these tutorials to setup your environment.
- Development Environment - Another useful link for setting up you development environment.
We've already said that HTML is important to a website, but with Jekyll, we have almost no need to touch a single HTML file. Instead we can use Markdown. Contrary to its name, Markdown is a mark up language in which you write plain text files and render them into something that is nicer to view. The README you are currently reading is written in Markdown and rendered nicely on GitHub. There isn't really much to it, but have a look at these resources:
- Atom - A very nice text editor similar to sublime-text
- Markdown Cheatsheet - A very good syntax reference
Once you have read (or if you already knew) the information provided above you should be ready to start contributing to our website - congrats!
To get started, make sure you have a GitHub account and then talk to (or email) a committee member about gaining access to the repository and what you would like to add and/or modify. From there, the committee will consider the best approach to get you adding your "2 cents" and put you in contact with the main developer.
- Jarryd Tilbrook (@jradtilbrook)
- Luke Stokes (@Tapego)
- Curtin Robotics Club (@curtinrobotics)