Minimalistic Medium-like theme built on Hugo and Tachyons.
This theme is built on top of Ananke, another popular Hugo theme.
The intent of this theme is to provide a solid starting place for Hugo sites with basic features and include best practices for performance, accessibility, and rapid development.
We, at awsomsauce (which also uses Sauce!) wanted to host our blog on Medium. There are plenty of reasons why one should do that, especially if you care about what you own on the Internet. We instead chose to use one of these hip cool static site generators to itch our scratch of trying out some new tech. We truly wanted the look and feel of our blog to be like Medium, so we all jumped on the NIH syndrome train and created Sauce!
- Responsive
- Accessible
- Contact form
- Custom Robots.txt (changes values based on environment)
- Internal templates for meta data, google analytics, and DISQUS or COMMENTO comments
- RSS Discovery
- Table of Contents (must declare
toc: true
in post parameter) - Stackbit configuration (Stackbit)
Also includes examples of Hugo Features or Functions:
- Pagination (internal template)
- Taxonomies
- Archetypes
- Custom shortcode
- Related content
- Hugo built-in menu
- i18n
with
HUGO_ENV
first
after
sort
- Site LanguageCode
where
- Content Views
- Partials
- Template layouts (type "post" uses a special list template, single template, and a content view)
- Tags
len
- Conditionals
ge
(greater than or equal to).Site.Params.mainSections
to avoid hard-coding "blog," etc. [release note]
This theme uses the "Tachyons" CSS library. This will allow you to manipulate the design of the theme by changing class names in HTML without touching the original CSS files. For more information see the Tachyons website.
Inside the folder of your Hugo site run:
$ git submodule add https://github.com/awsomsauce/hugo-theme-sauce.git themes/sauce
For more information read the official setup guide of Hugo.
After installing the theme successfully it requires a just a few more steps to get your site running.
Take a look inside the
exampleSite
folder of this theme. You'll find a file called
config.toml
.
To use it, copy the
config.toml
in the root folder of your Hugo site. Feel free to change the strings in this
theme.
You may need to delete the line: themesDir = "../.."
To enable comments, add following to your config file:
- DISQUS:
disqusShortname = YOURSHORTNAME
- COMMENTO:
[params] commentoEnable = true
For any page or post you can add a featured image by including the local path in
front matter (see content in the exampleSite/content/_readme.md
file for
examples): featured_image: '/images/gohugo-default-sample-hero-image.jpg'
If you would like to hide the header text on the featured image on a page, set
omit_header_text
to true
. See exampleSite/content/contact.md
for an
example.
You don't need an image though. The default background color is black, but you can change the color, by changing the default color class in the config.toml file. Choose a background color from any on the Tachyons library site, and preface it with "bg-"
example: background_color_class = "bg-blue"
or background_color_class = "bg-gray"
This theme includes a shortcode for a contact form that you can add to any page (there is an example on the contact page in the exampleSite folder). One option is to use formspree.io as proxy to send the actual email. Each month, visitors can send you up to one thousand emails without incurring extra charges. Visit the Formspree site to get the "action" link and add it to your shortcode like this:
{{< form-contact action="https://formspree.io/[email protected]" >}}
The theme is set, by default, to use a near-white background color and the
"Avenir" or serif typeface. You can change these in your config file with the
body_classes
parameter, like this:
[params]
body_classes = "avenir bg-near-white"
which will give you a body class like this:
<body class="avenir bg-near-white">
note: The body_classes
parameter will not change the font used in post
content. To do this, you must use the post_content_classes
parameter.
You can find a list of available typefaces here.
And a list of background colors here.
n.b. in future versions we will likely separate the typeface and other body classes.
You can override the built-in css by using your own. Just put your own css files
in the static
directory of your website (the one in the theme directory also
works but is not recommended) and modify the custom_css
parameter in your
config file. The path referenced in the parameter should be relative to the
static
folder. These css files will be added through the header
partial
after the built-in css file.
For example, if your css files are static/css/custom.css
and
static/css/custom2.css
then add the following to the config file:
[params]
custom_css = ["css/custom.css","css/custom2.css"]
If you add a key of show_reading_time
true to either the Config Params, a page
or section's front matter, articles will show the reading time and word count.
In order to see your site in action, run Hugo's built-in local server.
$ hugo server
Now enter localhost:1313
in the address bar of your
browser.
To run in production (e.g. to have Google Analytics show up), run
HUGO_ENV=production
before your build command. For example:
HUGO_ENV=production hugo
Note: The above command will not work on Windows. If you are running a Windows OS, use the below command:
set HUGO_ENV=production
hugo
If you find a bug or have an idea for a feature, feel free to use the issue tracker to let me know.