diff --git a/README.md b/README.md new file mode 100644 index 0000000..463f53b --- /dev/null +++ b/README.md @@ -0,0 +1,101 @@ +# A Basic Hugo Theme + +While the official documentation about Hugo [Templates](https://gohugo.io/templates/) +does provide all of the pieces to get started creating a theme, it doesn't +necessarily put them together in one, easy-to-see-together place. This theme +attempts to pull all of the necessary pieces together into a theme that can be +used as a starting point to create more sophisticated themes. + +## Getting Started + +Follow the [Hugo Quickstart](https://gohugo.io/getting-started/quick-start/) +instructions on how to install Hugo, create a site, and install a theme. +Installing the theme as a git submodule is the preferred way. + +``` +git add submodule https://git.thecorams.net/kevin/basic-theme.git themes/basic-theme +``` + +### Example Site + +The theme includes an example site to give a quick way to see how the theme +looks and behaves. + +``` +cd exampleSite +hugo serve [ -D ] --themesDir ../.. +``` + +Most of the sample posts are intentionally set `draft: true` to allow for +testing few posts vs many posts. + +## Setup + +As a very basic theme, there is very little to be configured in ones `config.toml` +file. + +The layout files uses Hugo's `markdownify` pipe to display the `copyright` +configuration setting, providing support both for HTML5 character escape +sequences such as `©` as well as markdwn formatting and links. + +The only non-standard configuration setting is the `subtitle` parameter: + +```toml +[params] + subtitle = "A sub-title for your site" +``` + +## Theme Organization + +### Semantic Content Organization + +The chrome of the theme page organization is as follows: + +```html + + + Site Title + + +
+
+

Site Title

+

Site Sub-title

+
+ +
+
+
+

Content Title

+ +
+
+ + + +
+
+ + + +``` + +If the content pages use `##` as their largest heading, this will result +in document outlines structured as: + +1. Site Title + 1. Site Sub-title +2. Content Title + 1. Header from Content + 1. Sub-header from content + 2. Second Header from Content +