This is the new (first deployed July 2016) website for the University of Michigan Fencing Club. It is a static site generated by Hugo and uses the club-theme (not included in this repository) as a theme.
This compiled site is available at http://umich.edu/~fencing.
The previous version of this site, which heavily influenced the aesthetics of this site, was difficult to edit and update due to being made without a static site generator. This new website is much easier to edit, thanks to Hugo's templating functionality, and this means updating the roster and adding results, for example, won't be such a painful process in the future.
Download both this repository and club-theme:
$ git clone git@github.com:UM-Fencing/UMFC-website && \
cd UMFC-website && mkdir themes/ && \
git clone git@github.com:UM-Fencing/club-theme -o themes/club-theme
or using HTTPS:
$ git clone https://github.com/UM-Fencing/UMFC-website && \
cd UMFC-website && mkdir themes/ && \
git clone https://github.com/UM-Fencing/club-theme -o themes/club-theme
You should also install Hugo if you have not already done so!
To update the site's content, edit (or create) the files available in content/
.
Use Markdown where possible and HTML when necessary.
(Remember, writing HTML in Markdown files is OK!)
Sentences should be separated by line breaks for git's sake.
Images should be contained in static/img/
and can be referenced from non-index files with ../img/<filename>
.
(From _index.md
, refer to images as img/<filename>
.)
To change site-wide features (e.g., default jumbotron image, practice times, site title), edit config.toml
.
You must have write permissions to login.itd.umich.edu:/afs/umich.edu/group/soas/fencing
to proceed.
After making changes, testing, and committing, delete the existing public/
directory (to eliminate remnants from old builds), recompile the site, and deploy to the webserver:
$ rm -rf public/
$ hugo
$ scp -r public/ <username>@login.itd.umich.edu:/afs/umich.edu/group/soas/fencing/Public/html
It would be nice to automate deployment using git hooks and CI, or even to make the production directory a bare git repository to push the public/
directory to, but that's an issue for another time.