generated from CaiJimmy/hugo-theme-stack-starter
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 5860027
Showing
35 changed files
with
875 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
# Update the NODE_VERSION arg in docker-compose.yml to pick a Node version: 18, 16, 14 | ||
ARG NODE_VERSION=16 | ||
FROM mcr.microsoft.com/devcontainers/javascript-node:${NODE_VERSION} | ||
|
||
# VARIANT can be either 'hugo' for the standard version or 'hugo_extended' for the extended version. | ||
ARG VARIANT=hugo | ||
# VERSION can be either 'latest' or a specific version number | ||
ARG VERSION=latest | ||
|
||
# Download Hugo | ||
RUN apt-get update && apt-get install -y ca-certificates openssl git curl && \ | ||
rm -rf /var/lib/apt/lists/* && \ | ||
case ${VERSION} in \ | ||
latest) \ | ||
export VERSION=$(curl -s https://api.github.com/repos/gohugoio/hugo/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}') ;;\ | ||
esac && \ | ||
echo ${VERSION} && \ | ||
case $(uname -m) in \ | ||
aarch64) \ | ||
export ARCH=ARM64 ;; \ | ||
*) \ | ||
export ARCH=64bit ;; \ | ||
esac && \ | ||
echo ${ARCH} && \ | ||
wget -O ${VERSION}.tar.gz https://github.com/gohugoio/hugo/releases/download/v${VERSION}/${VARIANT}_${VERSION}_Linux-${ARCH}.tar.gz && \ | ||
tar xf ${VERSION}.tar.gz && \ | ||
mv hugo /usr/bin/hugo | ||
|
||
# Hugo dev server port | ||
EXPOSE 1313 | ||
|
||
# [Optional] Uncomment this section to install additional OS packages you may want. | ||
# | ||
# RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \ | ||
# && apt-get -y install --no-install-recommends <your-package-list-here> | ||
|
||
# [Optional] Uncomment if you want to install more global node packages | ||
# RUN sudo -u node npm install -g <your-package-list-here> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
{ | ||
"name": "Hugo (Community)", | ||
"build": { | ||
"dockerfile": "Dockerfile", | ||
"args": { | ||
// Update VARIANT to pick hugo variant. | ||
// Example variants: hugo, hugo_extended | ||
// Rebuild the container if it already exists to update. | ||
"VARIANT": "hugo_extended", | ||
// Update VERSION to pick a specific hugo version. | ||
// Example versions: latest, 0.73.0, 0,71.1 | ||
// Rebuild the container if it already exists to update. | ||
"VERSION": "latest", | ||
// Update NODE_VERSION to pick the Node.js version: 12, 14 | ||
"NODE_VERSION": "14" | ||
} | ||
}, | ||
|
||
// Configure tool-specific properties. | ||
"customizations": { | ||
// Configure properties specific to VS Code. | ||
"vscode": { | ||
// Set *default* container specific settings.json values on container create. | ||
"settings": { | ||
"html.format.templating": true | ||
}, | ||
|
||
// Add the IDs of extensions you want installed when the container is created. | ||
"extensions": [ | ||
"tamasfe.even-better-toml", | ||
"davidanson.vscode-markdownlint" | ||
] | ||
} | ||
}, | ||
|
||
// Use 'forwardPorts' to make a list of ports inside the container available locally. | ||
"forwardPorts": [ | ||
1313 | ||
], | ||
|
||
// Use 'postCreateCommand' to run commands after the container is created. | ||
// "postCreateCommand": "uname -a", | ||
|
||
// Set `remoteUser` to `root` to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root. | ||
"remoteUser": "node", | ||
"features": { | ||
"ghcr.io/devcontainers/features/go:1": { | ||
"version": "latest" | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
name: Deploy to Github Pages | ||
|
||
on: | ||
push: | ||
branches: [master] | ||
pull_request: | ||
branches: [master] | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
|
||
permissions: | ||
# Give the default GITHUB_TOKEN write permission to commit and push the | ||
# added or changed files to the repository. | ||
contents: write | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: 0 | ||
|
||
- name: Cache Hugo resources | ||
uses: actions/cache@v4 | ||
env: | ||
cache-name: cache-hugo-resources | ||
with: | ||
path: resources | ||
key: ${{ env.cache-name }} | ||
|
||
- uses: actions/setup-go@v5 | ||
with: | ||
go-version: "^1.17.0" | ||
- run: go version | ||
|
||
- name: Setup Hugo | ||
uses: peaceiris/actions-hugo@v2 | ||
with: | ||
hugo-version: "latest" | ||
extended: true | ||
|
||
- name: Build | ||
run: hugo --minify --gc | ||
|
||
- name: Deploy 🚀 | ||
uses: JamesIves/github-pages-deploy-action@v4 | ||
with: | ||
branch: gh-pages | ||
folder: public | ||
clean: true | ||
single-commit: true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
name: Update theme | ||
|
||
# Controls when the workflow will run | ||
on: | ||
schedule: | ||
# Update theme automatically everyday at 00:00 UTC | ||
- cron: "0 0 * * *" | ||
# Allows you to run this workflow manually from the Actions tab | ||
workflow_dispatch: | ||
|
||
jobs: | ||
update-theme: | ||
runs-on: ubuntu-latest | ||
|
||
permissions: | ||
# Give the default GITHUB_TOKEN write permission to commit and push the | ||
# added or changed files to the repository. | ||
contents: write | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Setup Hugo | ||
uses: peaceiris/actions-hugo@v2 | ||
with: | ||
hugo-version: 0.123.8 | ||
extended: true | ||
|
||
- name: Update theme | ||
run: hugo mod get -u github.com/CaiJimmy/hugo-theme-stack/v3 | ||
|
||
- name: Tidy go.mod, go.sum | ||
run: hugo mod tidy | ||
|
||
- name: Commit changes | ||
uses: stefanzweifel/git-auto-commit-action@v5 | ||
with: | ||
commit_message: "CI: Update theme" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
public | ||
resources | ||
.hugo_build.lock |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
{ | ||
// See https://go.microsoft.com/fwlink/?LinkId=733558 | ||
// for the documentation about the tasks.json format | ||
"version": "2.0.0", | ||
"tasks": [ | ||
{ | ||
"label": "Serve Drafts", | ||
"type": "shell", | ||
"command": "hugo server -D", | ||
"group": { | ||
"kind": "test", | ||
"isDefault": true | ||
}, | ||
"isBackground": true, | ||
"problemMatcher": [] | ||
}, | ||
{ | ||
"label": "Build", | ||
"type": "shell", | ||
"command": "hugo", | ||
"group": { | ||
"kind": "build", | ||
"isDefault": true | ||
}, | ||
"problemMatcher": [] | ||
} | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
MIT License | ||
|
||
Copyright (c) 2021 Jimmy Cai | ||
|
||
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. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
<img align="right" width="150" alt="logo" src="https://user-images.githubusercontent.com/5889006/190859553-5b229b4f-c476-4cbd-928f-890f5265ca4c.png"> | ||
|
||
# Hugo Theme Stack Starter Template | ||
|
||
This is a quick start template for [Hugo theme Stack](https://github.com/CaiJimmy/hugo-theme-stack). It uses [Hugo modules](https://gohugo.io/hugo-modules/) feature to load the theme. | ||
|
||
It comes with a basic theme structure and configuration. GitHub action has been set up to deploy the theme to a public GitHub page automatically. Also, there's a cron job to update the theme automatically everyday. | ||
|
||
## Get started | ||
|
||
1. Click *Use this template*, and create your repository on GitHub. | ||
![Step 1](https://user-images.githubusercontent.com/5889006/156916624-20b2a784-f3a9-4718-aa5f-ce2a436b241f.png) | ||
|
||
2. Once the repository is created, create a GitHub codespace associated with it. | ||
![Create codespace](https://user-images.githubusercontent.com/5889006/156916672-43b7b6e9-4ffb-4704-b4ba-d5ca40ffcae7.png) | ||
|
||
3. And voila! You're ready to go. The codespace has been configured with the latest version of Hugo extended, just run `hugo server` in the terminal and see your new site in action. | ||
|
||
4. Check `config` folder for the configuration files. You can edit them to suit your needs. Make sure to update the `baseurl` property in `config/_default/config.toml` to your site's URL. | ||
|
||
5. Once you're done editing the site, just commit it and push it. GitHub action will deploy the site automatically to GitHub page associated with the repository. | ||
![GitHub action](https://user-images.githubusercontent.com/5889006/156916881-90b8bb9b-1925-4e60-9d7a-8026cda729bf.png) | ||
|
||
--- | ||
|
||
In case you don't want to use GitHub codespace, you can also run this template in your local machine. **You need to install Git, Go and Hugo extended locally.** | ||
|
||
## Update theme manually | ||
|
||
Run: | ||
|
||
```bash | ||
hugo mod get -u github.com/CaiJimmy/hugo-theme-stack/v3 | ||
hugo mod tidy | ||
``` | ||
|
||
> This starter template has been configured with `v3` version of theme. Due to the limitation of Go module, once the `v4` or up version of theme is released, you need to update the theme manually. (Modifying `config/module.toml` file) | ||
## Deploy to another static page hostings | ||
|
||
If you want to build this site using another static page hosting, you need to make sure they have Go installed in the machine. | ||
|
||
<details> | ||
<summary>Vercel</summary> | ||
|
||
You need to overwrite build command to install manually Go: | ||
|
||
``` | ||
amazon-linux-extras install golang1.11 && hugo --gc --minify | ||
``` | ||
|
||
![](https://user-images.githubusercontent.com/5889006/156917172-01e4d418-3469-4ffb-97e4-a905d28b8424.png) | ||
|
||
Make sure also to specify Hugo version in the environment variable `HUGO_VERSION` (Use the latest version of Hugo extended): | ||
|
||
![Environment variable](https://user-images.githubusercontent.com/5889006/156917212-afb7c70d-ab85-480f-8288-b15781a462c0.png) | ||
</details> |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
/* | ||
You can add your own custom styles here. | ||
*/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
# Rename this file to languages.toml to enable multilingual support | ||
[en] | ||
languageName = "English" | ||
languagedirection = "ltr" | ||
title = "Example Site" | ||
weight = 1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
# Change baseurl before deploy | ||
baseurl = "https://demo.stack.jimmycai.com" | ||
languageCode = "en-us" | ||
paginate = 5 | ||
title = "Hugo Theme Stack Starter" | ||
|
||
# Theme i18n support | ||
# Available values: en, fr, id, ja, ko, pt-br, zh-cn, zh-tw, es, de, nl, it, th, el, uk, ar | ||
defaultContentLanguage = "en" | ||
|
||
# Set hasCJKLanguage to true if DefaultContentLanguage is in [zh-cn ja ko] | ||
# This will make .Summary and .WordCount behave correctly for CJK languages. | ||
hasCJKLanguage = false | ||
|
||
# Change it to your Disqus shortname before using | ||
disqusShortname = "hugo-theme-stack" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
# Markdown renderer configuration | ||
[goldmark.renderer] | ||
unsafe = true | ||
|
||
[tableOfContents] | ||
endLevel = 4 | ||
ordered = true | ||
startLevel = 2 | ||
|
||
[highlight] | ||
noClasses = false | ||
codeFences = true | ||
guessSyntax = true | ||
lineNoStart = 1 | ||
lineNos = true | ||
lineNumbersInTable = true | ||
tabWidth = 4 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
# Configure main menu and social menu | ||
#[[main]] | ||
#identifier = "home" | ||
#name = "Home" | ||
#url = "/" | ||
#[main.params] | ||
#icon = "home" | ||
#newtab = true | ||
|
||
[[social]] | ||
identifier = "github" | ||
name = "GitHub" | ||
url = "https://github.com/CaiJimmy/hugo-theme-stack" | ||
|
||
[social.params] | ||
icon = "brand-github" | ||
|
||
[[social]] | ||
identifier = "twitter" | ||
name = "Twitter" | ||
url = "https://twitter.com" | ||
|
||
[social.params] | ||
icon = "brand-twitter" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
[[imports]] | ||
path = "github.com/CaiJimmy/hugo-theme-stack/v3" |
Oops, something went wrong.