-
Notifications
You must be signed in to change notification settings - Fork 22
Home
Welcome to the cfgmgmtcamp.eu wiki!
This is a wiki on how we create our website using Hugo CMS.
The wiki explains how you can create content, it does not go into details on how the content is created.
Some basics on Hugo CMS.
We use the Makefile to build our site, and recommend you do the same.
You need to have HugoCMS, use go get github.com/gohugoio/hugo
to install HugoCMS
If this doesn't work, please refer to the Hugo CMS documentation on https://github.com/gohugoio/hugo
The Makefile build and serves the website.
-
make
: builds the website using Hugo -
make serve
: builds the website and serves it locally usally on port 1313 -
make draft
: builds the website including any draft, archived or future posts
HugoCMS has the concept op languages, and we use this for each event, an event is defined as a HugoCMS language.
├── assets
│ └── images
│ ├── speakers
│ └── sponsors
├── config
│ ├── _default
│ ├── development
│ └── production
├── content
│ ├── <eventcode>
│ │ ├── fringes
│ │ ├── ghent
│ │ ├── past
│ │ ├── posts
│ │ ├── room
│ │ ├── schedule
│ │ ├── speaker
│ │ └── sponsors
├── data
│ ├── <eventcode>
│ │ └── timeslots
├── static
│ ├── archive
│ │ ├── 2014
│ │ ├── 2015
│ │ ├── berlin-2016
│ │ ├── gent-2016
│ │ ├── gent-2017
│ │ ├── gent-2018
│ │ └── pdx-2017
│ ├── files
│ ├── images
│ ├── schedule
│ └── speakers
└── themes
└── cfgmgmtcamp
├── archetypes
├── assets
├── layouts
└── static
For the purpose of creating content the content/
folder is the most important.
The eventcode
is the name of the city followed directly by the year.
The structure shows the following different content types for each event :
- fringes : this contains the fringe event pages
- posts : this contains the blog posts of the website
- room : this refers to the rooms at the venue
- schedule : this is the talk schedule folder and contains the sub folders per day for creating a grid overview of the talks
- speaker : this contains the speaker pages
- sponsors : this contains the sponsor data
The public/
and the resource/
folders is where HugoCMS outputs the website pages.
- The
public/
folder contain html, image and other output data, if you use the Makefile, it will compress all pages using gzip. - The
resources/
folder contains the data HugoCMS uses as resources to generate output from.
There are 2 basic ways to create content :
- your favourite text editor
- using Hugo CMS :
hugo new <filename>
The Hugo CMS command creates the metadata structure in the file you specify for you.
Because we're all YAML engineer, the default metadata structure is in YAML, however TOML and JSON are also supported.
Each of the content types will have a specific wiki page with more information and the metadata content.
Please use the sidebar to navigate to the right content specific page.