4.3 KiB
title, intro, redirect_from, product, versions, topics, shortTitle
| title | intro | redirect_from | product | versions | topics | shortTitle | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Adding a theme to your GitHub Pages site using Jekyll | You can personalize your Jekyll site by adding and customizing a theme. |
|
{% data reusables.gated-features.pages %} |
|
|
Add theme to Pages site |
{% data reusables.pages.actions-is-preferred %}
People with write permissions for a repository can add a theme to a {% data variables.product.prodname_pages %} site using Jekyll.
{% data reusables.pages.test-locally %}
Supported themes
Out of the box, the following themes are supported:
- Architect
- Cayman
- Dinky
- Hacker
- Leap day
- Merlot
- Midnight
- Minima
- Minimal
- Modernist
- Slate
- Tactile
- Time machine
The jekyll-remote-theme Jekyll plugin is also available and lets you load other themes.
Adding a theme
{% data reusables.pages.navigate-site-repo %} {% data reusables.pages.navigate-publishing-source %}
- Navigate to
_config.yml. {% data reusables.repositories.edit-file %} - Add a new line to the file for the theme name.
- To use a supported theme, type
theme: THEME-NAME, replacing THEME-NAME with the name of the theme as shown in the_config.ymlof the theme's repository (most themes follow ajekyll-theme-NAMEnaming convention). For a list of supported themes, see Supported themes on the {% data variables.product.prodname_pages %} site. For example, to select the Minimal theme, typetheme: jekyll-theme-minimal. - To use any other Jekyll theme hosted on {% data variables.product.prodname_dotcom %}, type
remote_theme: THEME-NAME, replacing THEME-NAME with the name of the theme as shown in the README of the theme's repository. {% data reusables.files.write_commit_message %} {% data reusables.files.choose-commit-email %} {% data reusables.files.choose_commit_branch %} {% data reusables.files.propose_file_change %}
- To use a supported theme, type
Customizing your theme's CSS
{% data reusables.pages.best-with-supported-themes %}
{% data reusables.pages.theme-customization-help %}
{% data reusables.pages.navigate-site-repo %} {% data reusables.pages.navigate-publishing-source %}
-
Create a new file called
/assets/css/style.scss. -
Add the following content to the top of the file:
--- --- @import "{% raw %}{{ site.theme }}{% endraw %}"; -
Add any custom CSS or Sass (including imports) you'd like immediately after the
@importline.
Customizing your theme's HTML layout
{% data reusables.pages.best-with-supported-themes %}
{% data reusables.pages.theme-customization-help %}
- On {% data variables.product.prodname_dotcom %}, navigate to your theme's source repository. For example, the source repository for Minimal is
https://github.com/pages-themes/minimal. - In the
_layoutsfolder, navigate to your theme's_default.htmlfile. - Copy the contents of the file. {% data reusables.pages.navigate-site-repo %} {% data reusables.pages.navigate-publishing-source %}
- Create a file called
_layouts/default.html. - Paste the default layout content you copied earlier.
- Customize the layout as you'd like.