JHanselman / icms-conference.github.io

The web presence of the ICMS conference series

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Repository holding the sources of the icms-conference.org website (aka icms-conference.github.io)

About

This website is hosted as a github page. In short, is built statically from Markdown source files using Jekyll. To update a page, just modify the corresponding source and push. This can be done online by clicking on "Edit this page" in the side bar. See the above links for details.

  • _config.yml: main configuration page
  • _layouts/*: local style files
  • _includes/*: reusable chunks of web pages, like the side bar
  • public/*: Jekyll style files (almost vanilla), logos, ...

There are four general layout styles for pages (which are specified by the layout: in the metadata section at the top of the respective markdown file:

  • default: the default layout for pages
  • congress: the layout of the pages of a particular congress. If the congress is upcoming (as specified in the upcoming variable in _config.yml), this layout will include sidebar-upcoming.html else sidebar-congress.html. The former can change with the organization; the latter only contains the things that are needed for archiving.
  • session: the layout of the session pages of a particular congress
  • post: news post; see _posts use the orga: key to make them congress-specific.

Their layouts are specified by equally-named files in _layouts.

How to use Jekyll to test/build this website

This is a static website automatically generated with Jekyll by GitHub Pages.

These instructions are for ICMS members who wish to do more than the occasional editing.

Editing pages online with GitHub

You can edit any page by following the "Edit this page" link in the sidebar. Alternatively, you can directly navigate to the corresponding .md (Markdown) file in GitHub.

This will drop you in GitHub's file editing interface, where you can modify the source code, preview it, and save your changes, by giving a short description of what you modified. If you have write access to the repository (hint: you do), your modifications will be published rightaway. If you do not have right access, you will be asked to fork the repository and make a pull request.

Most of the pages are written in Markdown, which is a textual format for generating formatted text. Markdown syntax is very intuitive, you can get a quick review here or here.

Working locally

If you want to do more than the occasional editing, you'll soon realise GitHub's editor and preview are too limited. It's better to work locally on your computer.

All you need to work locally is a Git client. Clone the repository and start coding right away.

At some point, you will need to preview your work, but pushing to GitHub each time you want to preview is clumsy. Your best option is to install Jekyll and the required dependencies on your machine. It is recommended to install the GitHub pages gem which provides you with the exact same versions used by GitHub to compile your site.

If you already have Ruby, the install part should be as easy as

gem install github-pages

Note that you will need Ruby headers (ruby-dev package on Ubuntu) in order to compile C dependencies.

On OS X, you can just type sudo gem install github-pages.

Now you can cd into your local clone of the repository and launch the compilation by

Jekyll serve -w -b''

Your site will be generated in a _site sub-directory, and served live at http://localhost:4000/. Any changes to the sources will trigger an automatic recompilation!

Have fun!

icms-conference.github.io

The web presence of the ICMS conference series

About

The web presence of the ICMS conference series


Languages

Language:HTML 88.8%Language:TeX 9.6%Language:CSS 1.5%Language:SCSS 0.1%Language:JavaScript 0.0%