Skip to content

jdelight/asyncjs.github.com

 
 

Repository files navigation

Async Website

Welcome to the repository for the Async website. The site is a static repository of files and directories that is converted by Jekyll into a static site when a new commit is pushed to GitHub.

Running the server locally

Just run the following from the project directory:

$ make serve

Then visit http://localhost:4000 in the browser. This writes out the site files into the /tmp/asyncjs directory (apols to Windows users).

Creating a new event

To create a new post you'll need to create a new file in the _posts directory. This should be named YYYY-MM-DD-slug.md where YYYY-MM-DD is the date of the event, slug is the page slug and .md is the formatter.

There is a helpful make task for creating a new event file. Just run the following from the project directory:

$ make post

The top part of the post is meta data that is used to build the site the second part after the second --- is the post body. This should be formatted with markdown.

Metadata

There is quite a bit of metadata that can be added to a post. It's formatted in YAML and here's an overview of what it all means.

---
number:    The number of the event in the series.
title:     The title of the event.
summary:   A short one-liner for the event. Markdown is allowed.
date:      A ISO8601 formatted string for the date and time of the event.
lanyrd:    The url to the lanyrd page for the event.
speakers:  An array of speakers
- name:    Speaker name
  link:    Speaker website or twitter account.
sponsors:  An array of sponsors.
- name:    Sponsor name.
  link:    Sponsor website.
  logo:    Sponsor logo.
image:     An image to accompany the page.
  url:     The url to the image.
  title:   A short description of the image.
  link:    A link to the image if hosted elsewhere
tags:      An array of tags (no more than five please)
venue:     An object containing venue data.
  name:    The name of the venue.
  link:    The website for the venue.
  location:A link to a map for the venue, falls back to Google Maps (optional)
  address: The address of the venue all in one line.
  latlong: Lat long for the venue eg. "50.826945,-0.136401"
layout:    The page layout file. Usually "event"
category:  The page category. Usually "event"
published: If false then the post will not appear on the site.
---

Creating a blog post

A blog post is created in the same way as an event entry but the date in the filename should be the published date. For a blog post the metadata is much simpler:

--- 
title:     The title of the blog post
authors:   An array of authors
- name:    The authors name.
  link:    The authors website.
category:  news
layout:    news
published: true
---

Triggering a site rebuild, without new content

GitHub pages rebuilds the site whenever a new commit is made. If a re-build is required, even without new content - e.g. in order to re-render the 'next event' on the home page, then run the following:

git commit --allow-empty -m "Republish GitHub pages (empty commit)"
git push

About

The Async website, powered by Jekyll & Github Pages

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 87.0%
  • CSS 12.7%
  • Shell 0.3%