commit dcdde20b7cce91da456d52396610c8cb4794a531 Author: Robert Austin Date: Sun Feb 17 16:55:16 2019 +1000 first commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6326721 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +.DS_Store +node_modules +.idea +public +terminal \ No newline at end of file diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..164ae16 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2018 Robert Austin + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..71e4ae8 --- /dev/null +++ b/README.md @@ -0,0 +1,123 @@ +# Hugo Whisper Theme + +Whisper is a minimal documentation theme for Hugo. The design and functionality is intentionally minimal. We’re aiming for a similar feel to a Github readme. + +[Live Demo](https://hugo-whisper.netlify.com/) | +[Zerostatic Themes](https://www.zerostatic.io/theme/hugo-whisper/) + +![Hugo Whisper Theme screenshot](https://github.com/JugglerX/hugo-whisper-theme/blob/master/images/screenshot-full.jpg) + +## Theme features + +# Installation + +To use this theme you will need to have Hugo installed. If you don't already have Hugo installed please follow the official [installation guide](https://gohugo.io/getting-started/installing/) + +### Check Hugo Version + +This theme uses [Hugo Pipes](https://gohugo.io/hugo-pipes/scss-sass/) to compile SCSS and minify assets. Please make sure you have the `Hugo Extended` version installed. If you are not using the extended version this theme will not not compile. + +``` +hugo version +``` + +### Create a new Hugo site + +``` +hugo new site mynewsite +``` + +This will create a fresh Hugo site in the folder `mynewsite`. + +### Install theme + +Copy or git clone this theme into the sites themes folder `mynewsite/themes` + +#### Install with Git + +``` +cd mynewsite +cd themes +git clone https://github.com/jugglerx/hugo-hero-theme.git +``` + +#### Install from .zip file + +You can download the .zip file located here https://github.com/JugglerX/hugo-hero-theme/archive/master.zip. + +Extract the downloaded .zip inside the `themes` folder. Rename the extracted folder from `hugo-hero-theme-master` -> `hugo-hero-theme`. You should end up with the following folder structure `mynewsite/themes/hugo-hero-theme` + +### Add example content + +The fastest way to get started is to copy the example content. Copy the entire contents of the `exampleSite` folder to the root folder of your Hugo site (the folder with the README.md). + +### Update config.toml + +After you copy the `config.toml` into the root folder of your Hugo site you will need to update the `baseURL`, `themesDir` and `theme` values in the `config.toml` + +``` +baseURL = "/" +themesDir = "themes" +theme = "hugo-hero-theme" +``` + +### Run Hugo + +After installing the theme for the first time, generate the Hugo site. + +``` +hugo +``` + +For local development run Hugo's built-in local server. + +``` +hugo server +``` + +Now enter [`localhost:1313`](http://localhost:1313) in the address bar of your browser. + +# Configuring theme features + +### Homepage meta tags + +Often a homepage requires special meta tags such as a meta description or og meta data for twitter, facebook etc. You can configure these values in the `config.toml` + +``` +// config.toml +[params] + google_analytics_id="" + + [params.homepage_meta_tags] + meta_description = "a description of your website." + meta_og_title = "My Theme" + meta_og_type = "website" + meta_og_url = "https://www.mywebsite.com" + meta_og_image = "https://www.mywebsite.com/images/tn.png" + meta_og_description = "a description of your website." + meta_twitter_card = "summary" + meta_twitter_site = "@mytwitterhandle" + meta_twitter_creator = "@mytwitterhandle" +``` + +### Set meta tags on a per template/page basis + +You can set meta tags on a per template basis using a block. For example, you might want to write a custom meta description for the `/services` page. You can insert any valid HTML meta data inside the `{{ define "meta_tags }}` block at the top of a template. + +``` +// layouts/services/list.html +... + +{{ define "meta_tags" }} + +{{ end }} + +{{ define main }} +... +``` + +# Deploying to Netlify + +This theme includes a `netlify.toml` which is configured to deploy to Netlify from the `exampleSite` folder. See this discussion on how to deploy your site on Netlify from the `exampleSite` folder - https://discourse.gohugo.io/t/deploy-your-theme-to-netlify/15508 + +Most likely if you are deploying to Netlify, you are including the entire Hugo site, so you can delete the `netlify.toml` file. diff --git a/archetypes/default.md b/archetypes/default.md new file mode 100644 index 0000000..ac36e06 --- /dev/null +++ b/archetypes/default.md @@ -0,0 +1,2 @@ ++++ ++++ diff --git a/assets/js/libs/library.js b/assets/js/libs/library.js new file mode 100644 index 0000000..3e79cea --- /dev/null +++ b/assets/js/libs/library.js @@ -0,0 +1 @@ +console.log('Library') diff --git a/assets/js/pages/services.js b/assets/js/pages/services.js new file mode 100644 index 0000000..ee2e7d6 --- /dev/null +++ b/assets/js/pages/services.js @@ -0,0 +1 @@ +console.log('Services') diff --git a/assets/js/scripts.js b/assets/js/scripts.js new file mode 100644 index 0000000..19d4ec6 --- /dev/null +++ b/assets/js/scripts.js @@ -0,0 +1,9 @@ +var body = document.querySelector('body') +var menuTrigger = document.querySelector('#toggle-main-menu-mobile'); +var menuContainer = document.querySelector('#main-menu-mobile'); + +menuTrigger.onclick = function() { + menuContainer.classList.toggle('open'); + menuTrigger.classList.toggle('is-active') + body.classList.toggle('lock-scroll') +} diff --git a/assets/scss/_bootstrap-variables.scss b/assets/scss/_bootstrap-variables.scss new file mode 100755 index 0000000..bbbb9dc --- /dev/null +++ b/assets/scss/_bootstrap-variables.scss @@ -0,0 +1,65 @@ +$grid-breakpoints: ( + xs: 0, + sm: 576px, + md: 768px, + lg: 992px, + xl: 1300px, +); + +$container-max-widths: ( + sm: 540px, + md: 720px, + lg: 960px, + xl: 1140px, +); + +$grid-gutter-width: 20px; + +$primary: #1de9b6; +$secondary: #ffca28; +$black: #212529; + +// Links +$link-color: $primary; +$link-decoration: none; +$link-hover-color: lighten($primary, 20%); +$link-hover-decoration: underline; + +// Fonts +$font-size-base: 1rem; // Assumes the browser default, typically `16px` +$font-family-base: 'Roboto', Arial, sans-serif, -apple-system; +$font-family-serif: 'Lora', Arial, sans-serif, -apple-system; +$font-family-mono: 'Roboto Mono', monospace; +$line-height-base: 1.4; + +// Headings & Paragraph +$paragraph-color: #333; + +$spacer: 1rem; +$spacers: (); +$spacers: map-merge( + ( + 0: 0, + 1: 10px, + 2: 20px, + 3: 30px, + 4: 40px, + 5: 50px, + 6: 60px, + 7: 70px, + 8: 80px, + 9: 90px, + 10: 100px, + 11: 110px, + 12: 120px, + 13: 130px, + 14: 140px, + 15: 150px, + 16: 160px, + 17: 170px, + 18: 180px, + 19: 190px, + 20: 200px, + ), + $spacers +); diff --git a/assets/scss/bootstrap/_alert.scss b/assets/scss/bootstrap/_alert.scss new file mode 100755 index 0000000..dd43e23 --- /dev/null +++ b/assets/scss/bootstrap/_alert.scss @@ -0,0 +1,51 @@ +// +// Base styles +// + +.alert { + position: relative; + padding: $alert-padding-y $alert-padding-x; + margin-bottom: $alert-margin-bottom; + border: $alert-border-width solid transparent; + @include border-radius($alert-border-radius); +} + +// Headings for larger alerts +.alert-heading { + // Specified to prevent conflicts of changing $headings-color + color: inherit; +} + +// Provide class for links that match alerts +.alert-link { + font-weight: $alert-link-font-weight; +} + + +// Dismissible alerts +// +// Expand the right padding and account for the close button's positioning. + +.alert-dismissible { + padding-right: ($close-font-size + $alert-padding-x * 2); + + // Adjust close link position + .close { + position: absolute; + top: 0; + right: 0; + padding: $alert-padding-y $alert-padding-x; + color: inherit; + } +} + + +// Alternate styles +// +// Generate contextual modifier classes for colorizing the alert. + +@each $color, $value in $theme-colors { + .alert-#{$color} { + @include alert-variant(theme-color-level($color, $alert-bg-level), theme-color-level($color, $alert-border-level), theme-color-level($color, $alert-color-level)); + } +} diff --git a/assets/scss/bootstrap/_badge.scss b/assets/scss/bootstrap/_badge.scss new file mode 100755 index 0000000..b87a1b0 --- /dev/null +++ b/assets/scss/bootstrap/_badge.scss @@ -0,0 +1,47 @@ +// Base class +// +// Requires one of the contextual, color modifier classes for `color` and +// `background-color`. + +.badge { + display: inline-block; + padding: $badge-padding-y $badge-padding-x; + font-size: $badge-font-size; + font-weight: $badge-font-weight; + line-height: 1; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + @include border-radius($badge-border-radius); + + // Empty badges collapse automatically + &:empty { + display: none; + } +} + +// Quick fix for badges in buttons +.btn .badge { + position: relative; + top: -1px; +} + +// Pill badges +// +// Make them extra rounded with a modifier to replace v3's badges. + +.badge-pill { + padding-right: $badge-pill-padding-x; + padding-left: $badge-pill-padding-x; + @include border-radius($badge-pill-border-radius); +} + +// Colors +// +// Contextual variations (linked badges get darker on :hover). + +@each $color, $value in $theme-colors { + .badge-#{$color} { + @include badge-variant($value); + } +} diff --git a/assets/scss/bootstrap/_breadcrumb.scss b/assets/scss/bootstrap/_breadcrumb.scss new file mode 100755 index 0000000..25b9d85 --- /dev/null +++ b/assets/scss/bootstrap/_breadcrumb.scss @@ -0,0 +1,38 @@ +.breadcrumb { + display: flex; + flex-wrap: wrap; + padding: $breadcrumb-padding-y $breadcrumb-padding-x; + margin-bottom: $breadcrumb-margin-bottom; + list-style: none; + background-color: $breadcrumb-bg; + @include border-radius($border-radius); +} + +.breadcrumb-item { + // The separator between breadcrumbs (by default, a forward-slash: "/") + + .breadcrumb-item::before { + display: inline-block; // Suppress underlining of the separator in modern browsers + padding-right: $breadcrumb-item-padding; + padding-left: $breadcrumb-item-padding; + color: $breadcrumb-divider-color; + content: "#{$breadcrumb-divider}"; + } + + // IE9-11 hack to properly handle hyperlink underlines for breadcrumbs built + // without `