|
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- +++
- title = "Creating a theme"
- weight = 30
- +++
-
- Creating is exactly like creating a normal site with Gutenberg, except you
- will want to use many [Tera blocks](https://tera.netlify.com/docs/templates/#inheritance) to
- allow users to easily modify it.
-
- A theme also need to have a `theme.toml` configuration file with the
- following fields, here's the one from a [real template](https://github.com/Keats/hyde):
-
- ```toml
- name = "hyde"
- description = "A classic blog theme"
- license = "MIT"
- homepage = "https://github.com/Keats/gutenberg-hyde"
- # The minimum version of Gutenberg required
- min_version = "0.1"
-
- # Any variable there can be overriden in the end user `config.toml`
- # You don't need to prefix variables by the theme name but as this will
- # be merged with user data, some kind of prefix or nesting is preferable
- # Use snake_casing to be consistent with the rest of Gutenberg
- [extra]
- hyde_sticky = true
- hyde_reverse = false
- hyde_theme = ""
- hyde_links = [
- {url = "https://google.com", name = "Google.com"},
- {url = "https://google.fr", name = "Google.fr"},
- ]
-
- # The theme author info: you!
- [author]
- name = "Vincent Prouillet"
- homepage = "https://vincent.is"
-
- # If this is porting a theme from another static site engine, provide
- # the info of the original author here
- [original]
- author = "mdo"
- homepage = "http://markdotto.com/"
- repo = "https://www.github.com/mdo/hyde"
- ```
-
- A theme will also need three directories to work:
-
- - `static`: any static files used in this theme
- - `templates`: all templates used in this theme
- - `sass`: Sass stylesheets for this theme, can be empty
-
- To be featured on this site, the theme will require two more things:
-
- - `screenshot.png`: a screenshot of the theme in action, its size needs to be reasonable
- - `README.md`: a thorough README explaining how to use the theme and any other information
- of importance
-
- A simple theme you can use as example is [Hyde](https://github.com/Keats/hyde).
-
- # Caveat
-
- Please note that [include paths](https://tera.netlify.com/docs/templates/#include) can only be used in used in normal templates. Theme templates should use [macro's](https://tera.netlify.com/docs/templates/#macros) instead.
-
|