To contribute, fork this repository, improve content or site, then issue a pull request.
Other guides than the beginner guide are managed in Google documents. Refer to a listing of these documents in the wiki.
LearnOSM is built with Jekyll. All content can be found under _posts/
. The site is multilingual and posts are organized by language code (_posts/bi
, _posts/en
, etc).
It's handy to run the site locally when editing content or code - Jekyll documentation contains a good section on installation.
For fresh translations always start with a copy of the English guide.
Each chapter in a guide constitutes a markdown document. In order to handle languages and translations and to relate the document with a specific guide and a couple of YAML Frontmatter rules need to be in place.
Example front matter for a guide chapter:
layout: doc
title: Moving Forward
permalink: /en/beginner/moving-forward/
lang: en
category: beginner
Explanation:
layout
must bedoc
title
is the plain title of the document, must not be repeated in the document's bodypermalink
is the path to the document, must contain the language prefix (en
in this case)lang
is the language prefix of the document and must be the same as inpermalink
. This is redundant withpermalink
for Jekyll specific reasons.category
contains the guide's shortname (currently there is only one guide in the Jekyll site:beginner
).
Same as with content, to contribute, fork this repository, modify, then issue a pull request.
The site is hosted using GitHub Pages, any changes to the gh-pages branch automatically update the site within minutes.