1.56 KB
Newer Older
Gabriel Engel's avatar
Gabriel Engel committed
Sean Packham's avatar
Sean Packham committed

Source for the [Rocket.Chat website](
Sean Packham's avatar
Sean Packham committed
4 5 6

## Site structure

SingLi's avatar
SingLi committed
We chose Jekyll and GitHub pages because together they offer the most supported and user friendly way for others to fork, edit, preview and contribute documentation without having to setup a local development environment just to write copy, add images or manage files.
Sean Packham's avatar
Sean Packham committed
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27

For developers, only use templates and includes when they are needed. Creating a template per page or splitting templates into many parts that are only included once makes it challenging to maintain and contribute to the project.

### Templates

The `default.html` template is the base template used by pages or other templates (only `post.html` at the moment).

Only create a Template if it will be used by more than one page. Rather add the structure and content to the page e.g. see `index.html`.

### Includes

Like Templates, only create an Include if it will be used in more than one Template.

### Styles

When changing styles, bump the `version` number in `config.yml` to force browsers to load the new version.

Define Template or Page styles in their own file with the same name as the Template or Page (e.g `_templates/default.html`) and then include the style in `styles.scss`.

Only define variables for values that are used in multiple places and need to vary. Use contextually relevant names instead of calling it by the current value it holds e.g use `$body-color` instead of `$color-light-blue`. If you change the value of the variable in the second case, you have to update the name and everywhere it is referenced.