-
Fork and clone locally this repository
-
In the root folder:
git submodule update --init- Test locally:
hugo server -Dor for full rebuilds on change
hugo server --disableFastRenderor with docker
docker run --rm -it \
-v $(pwd):/src \
-p 1313:1313 \
hugomods/hugo:std-ci-0.139.4 \
server --bind 0.0.0.0- Create a document using:
hugo new content/events/<year>/<month>-<day>-<name>.md- Edit the event metadata:
date: The date of the event (with time)draft(optional): If set totrue, the event won't be published on websitepublishDate(optional): The date from which the event will be published (requires to rebuild the site)publishFrontPageDate(optional): The date from which the event will be published on the front page- register (optional): The link to the eventbrite registration frame (ex
https://www.helloasso.com/associations/bjpc/evenements/janvier-2026) tags(optional): A list of tags related to the event for navigation and SEOtitle: The title of the event (without date)videos(optional): A list of the replay videos (ex:https://www.youtube.com/watch?v=xxxx)
- Add the event details as content
- Create a document using:
hugo new content/speakers/<first_name>-<last_name>.md- Edit the speaker metadata:
title: The readable name of the speakertwitter(optional): The Twitter handle of the speaker (without@)
- Add the speaker biography as content.
Sponsors data are located in three locations:
static/img/sponsors/contains SVG image of the sponsors.
Please make sure the logos does not contains margin. You can easily trim them editing theviewportattribute of the image.layout/partials/widgets/sponsors.htmlcontains the HTML code of the sponsor sidebar widget.content/about/sponsors.mdcontains the Markdown code of the sponsor Web page.
- The home page contains the last events and shows:
- The registration link a week before the start of the event,
- The event video if present and event is past,
- The event details summary if details section is present,
- The event summary otherwise.
- Speakers page in an automatec alphabetic index.
- Speaker conference list from the speaker page is updated if a speaker is mentioned in an event content.
- Speaker profile picture comes from the Twitter and is regularly updated.
There is two kinds of custom short codes: generic ones, and section ones.
The section shortcode are expected to be used within event page content.
The flickr shortcode generates a gallery from a Flickr album:
{{< flickr id="72157659120711844" img="https://live.staticflickr.com/5783/23153505766_8b0cb95615_z.jpg" >}}
Using the following paramters:
id: the Flickr album id,img: the static URL of a picture in the album.
The gallery shortcode generates an image gallery from page resources:
{{< gallery match="images/*" >}}
Using the following paramters:
matchoptional: The path of images to include to the gallery (gallery/*) by default.
The iframe shortcode allows to insert safe frame into pages:
{{< iframe src="https://example.com" title="content-title" width="425" height="350" >}}
Using the following parameters:
src: The target of the frame,titlerecommanded: The description of the frame content for accessibility,widthoptional: The width of the frame (using CSS values like300pxor100%),heightoptional: The height of the frame (using CSS values](https://developer.mozilla.org/en-US/docs/Web/CSS/height#values) like300pxor100%).
The coc-section shortcode renders a page section with our code of conduct:
{{% coc-section %}}
The section-register shortcode generates a registration frame for an event:
{{< section-register >}}
The replay-section shortcode renders a page section with YouTube thumbnails and links of an event videos:
{{< replay-section >}}
The sponsor-section shortcode renders a page section with the year-related sponsors of the event:
{{< sponsor-section >}}
The unsafe shortcode allows to insert raw HTML content in Markdown pages:
{{< unsafe >}}
<div>Some content</div>
{{< /unsafe >}}
- Mainroad (GLP 2.0)
- medium-zoom (MIT)