Initial commit
This commit is contained in:
commit
d70d038785
35 changed files with 872 additions and 0 deletions
38
.devcontainer/Dockerfile
Normal file
38
.devcontainer/Dockerfile
Normal file
|
|
@ -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>
|
||||
51
.devcontainer/devcontainer.json
Normal file
51
.devcontainer/devcontainer.json
Normal file
|
|
@ -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"
|
||||
}
|
||||
}
|
||||
}
|
||||
49
.github/workflows/deploy.yml
vendored
Normal file
49
.github/workflows/deploy.yml
vendored
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
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@v3
|
||||
|
||||
- name: Cache Hugo resources
|
||||
uses: actions/cache@v3
|
||||
env:
|
||||
cache-name: cache-hugo-resources
|
||||
with:
|
||||
path: resources
|
||||
key: ${{ env.cache-name }}
|
||||
|
||||
- uses: actions/setup-go@v4
|
||||
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
|
||||
38
.github/workflows/update-theme.yml
vendored
Normal file
38
.github/workflows/update-theme.yml
vendored
Normal file
|
|
@ -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@v3
|
||||
|
||||
- name: Setup Hugo
|
||||
uses: peaceiris/actions-hugo@v2
|
||||
with:
|
||||
hugo-version: 0.115.2
|
||||
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@v4
|
||||
with:
|
||||
commit_message: "CI: Update theme"
|
||||
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
public
|
||||
resources
|
||||
28
.vscode/tasks.json
vendored
Normal file
28
.vscode/tasks.json
vendored
Normal file
|
|
@ -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": []
|
||||
}
|
||||
]
|
||||
}
|
||||
21
LICENSE
Normal file
21
LICENSE
Normal file
|
|
@ -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.
|
||||
57
README.md
Normal file
57
README.md
Normal file
|
|
@ -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.
|
||||

|
||||
|
||||
2. Once the repository is created, create a GitHub codespace asociated with it.
|
||||

|
||||
|
||||
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 asociated with the repository.
|
||||

|
||||
|
||||
---
|
||||
|
||||
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
|
||||
```
|
||||
|
||||

|
||||
|
||||
Make sure also to specify Hugo version in the environment variable `HUGO_VERSION` (Use the latest version of Hugo extended):
|
||||
|
||||

|
||||
</details>
|
||||
BIN
assets/img/avatar.png
Normal file
BIN
assets/img/avatar.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 410 B |
3
assets/scss/custom.scss
Normal file
3
assets/scss/custom.scss
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
/*
|
||||
You can add your own custom styles here.
|
||||
*/
|
||||
6
config/_default/_languages.toml
Normal file
6
config/_default/_languages.toml
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
# Rename this file to languages.toml to enable multilingual support
|
||||
[en]
|
||||
languageName = "English"
|
||||
languagedirection = "ltr"
|
||||
title = "Example Site"
|
||||
weight = 1
|
||||
16
config/_default/config.toml
Normal file
16
config/_default/config.toml
Normal file
|
|
@ -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"
|
||||
17
config/_default/markup.toml
Normal file
17
config/_default/markup.toml
Normal file
|
|
@ -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
|
||||
24
config/_default/menu.toml
Normal file
24
config/_default/menu.toml
Normal file
|
|
@ -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"
|
||||
2
config/_default/module.toml
Normal file
2
config/_default/module.toml
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
[[imports]]
|
||||
path = "github.com/CaiJimmy/hugo-theme-stack/v3"
|
||||
149
config/_default/params.toml
Normal file
149
config/_default/params.toml
Normal file
|
|
@ -0,0 +1,149 @@
|
|||
# Pages placed under these sections will be shown on homepage and archive page.
|
||||
mainSections = ["post"]
|
||||
# Output page's full content in RSS.
|
||||
rssFullContent = true
|
||||
favicon = "/favicon.png"
|
||||
|
||||
[footer]
|
||||
since = 2020
|
||||
customText = ""
|
||||
|
||||
[dateFormat]
|
||||
published = "Jan 02, 2006"
|
||||
lastUpdated = "Jan 02, 2006 15:04 MST"
|
||||
|
||||
[sidebar]
|
||||
emoji = "🍥"
|
||||
subtitle = "Lorem ipsum dolor sit amet, consectetur adipiscing elit."
|
||||
|
||||
[sidebar.avatar]
|
||||
enabled = true
|
||||
local = true
|
||||
src = "img/avatar.png"
|
||||
|
||||
[article]
|
||||
math = false
|
||||
readingTime = true
|
||||
|
||||
[article.license]
|
||||
enabled = true
|
||||
default = "Licensed under CC BY-NC-SA 4.0"
|
||||
|
||||
## Widgets
|
||||
[[widgets.homepage]]
|
||||
type = "search"
|
||||
|
||||
[[widgets.homepage]]
|
||||
type = "archives"
|
||||
|
||||
[widgets.homepage.params]
|
||||
limit = 5
|
||||
|
||||
[[widgets.homepage]]
|
||||
type = "categories"
|
||||
|
||||
[widgets.homepage.params]
|
||||
limit = 10
|
||||
|
||||
[[widgets.homepage]]
|
||||
type = "tag-cloud"
|
||||
|
||||
[widgets.homepage.params]
|
||||
limit = 10
|
||||
|
||||
[[widgets.page]]
|
||||
type = "toc"
|
||||
|
||||
[opengraph.twitter]
|
||||
site = ""
|
||||
card = "summary_large_image"
|
||||
|
||||
[defaultImage.opengraph]
|
||||
enabled = false
|
||||
local = false
|
||||
src = ""
|
||||
|
||||
[colorScheme]
|
||||
toggle = true
|
||||
default = "auto"
|
||||
|
||||
[imageProcessing.cover]
|
||||
enabled = true
|
||||
|
||||
[imageProcessing.content]
|
||||
enabled = true
|
||||
|
||||
## Comments
|
||||
[comments]
|
||||
enabled = true
|
||||
provider = "disqus"
|
||||
|
||||
[comments.disqusjs]
|
||||
shortname = ""
|
||||
apiUrl = ""
|
||||
apiKey = ""
|
||||
admin = ""
|
||||
adminLabel = ""
|
||||
|
||||
[comments.utterances]
|
||||
repo = ""
|
||||
issueTerm = "pathname"
|
||||
label = ""
|
||||
|
||||
[comments.remark42]
|
||||
host = ""
|
||||
site = ""
|
||||
locale = ""
|
||||
|
||||
[comments.vssue]
|
||||
platform = ""
|
||||
owner = ""
|
||||
repo = ""
|
||||
clientId = ""
|
||||
clientSecret = ""
|
||||
autoCreateIssue = false
|
||||
|
||||
[comments.waline]
|
||||
serverURL = ""
|
||||
lang = ""
|
||||
visitor = ""
|
||||
avatar = ""
|
||||
emoji = ["https://cdn.jsdelivr.net/gh/walinejs/emojis/weibo"]
|
||||
requiredMeta = ["name", "email", "url"]
|
||||
placeholder = ""
|
||||
|
||||
[comments.waline.locale]
|
||||
admin = "Admin"
|
||||
|
||||
[comments.twikoo]
|
||||
envId = ""
|
||||
region = ""
|
||||
path = ""
|
||||
lang = ""
|
||||
|
||||
[comments.cactus]
|
||||
defaultHomeserverUrl = "https://matrix.cactus.chat:8448"
|
||||
serverName = "cactus.chat"
|
||||
siteName = ""
|
||||
|
||||
[comments.giscus]
|
||||
repo = ""
|
||||
repoID = ""
|
||||
category = ""
|
||||
categoryID = ""
|
||||
mapping = ""
|
||||
lightTheme = ""
|
||||
darkTheme = ""
|
||||
reactionsEnabled = 1
|
||||
emitMetadata = 0
|
||||
|
||||
[comments.gitalk]
|
||||
owner = ""
|
||||
admin = ""
|
||||
repo = ""
|
||||
clientID = ""
|
||||
clientSecret = ""
|
||||
|
||||
[comments.cusdis]
|
||||
host = ""
|
||||
id = ""
|
||||
3
config/_default/permalinks.toml
Normal file
3
config/_default/permalinks.toml
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
# Permalinks format of each content section
|
||||
post = "/p/:slug/"
|
||||
page = "/:slug/"
|
||||
12
config/_default/related.toml
Normal file
12
config/_default/related.toml
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
# Related contents configuration
|
||||
includeNewer = true
|
||||
threshold = 60
|
||||
toLower = false
|
||||
|
||||
[[indices]]
|
||||
name = "tags"
|
||||
weight = 100
|
||||
|
||||
[[indices]]
|
||||
name = "categories"
|
||||
weight = 200
|
||||
8
content/_index.md
Normal file
8
content/_index.md
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
---
|
||||
menu:
|
||||
main:
|
||||
name: Home
|
||||
weight: 1
|
||||
params:
|
||||
icon: home
|
||||
---
|
||||
10
content/categories/example-category/_index.md
Normal file
10
content/categories/example-category/_index.md
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
---
|
||||
title: Example Category
|
||||
description: A description of this category
|
||||
image:
|
||||
|
||||
# Badge style
|
||||
style:
|
||||
background: "#2a9d8f"
|
||||
color: "#fff"
|
||||
---
|
||||
11
content/page/archives/index.md
Normal file
11
content/page/archives/index.md
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
---
|
||||
title: "Archives"
|
||||
date: 2022-03-06
|
||||
layout: "archives"
|
||||
slug: "archives"
|
||||
menu:
|
||||
main:
|
||||
weight: 2
|
||||
params:
|
||||
icon: archives
|
||||
---
|
||||
33
content/page/links/index.md
Normal file
33
content/page/links/index.md
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
---
|
||||
title: Links
|
||||
links:
|
||||
- title: GitHub
|
||||
description: GitHub is the world's largest software development platform.
|
||||
website: https://github.com
|
||||
image: https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png
|
||||
menu:
|
||||
main:
|
||||
weight: 4
|
||||
params:
|
||||
icon: link
|
||||
|
||||
comments: false
|
||||
---
|
||||
|
||||
To use this feature, add `links` section to frontmatter.
|
||||
|
||||
This page's frontmatter:
|
||||
|
||||
```yaml
|
||||
links:
|
||||
- title: GitHub
|
||||
description: GitHub is the world's largest software development platform.
|
||||
website: https://github.com
|
||||
image: https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png
|
||||
- title: TypeScript
|
||||
description: TypeScript is a typed superset of JavaScript that compiles to plain JavaScript.
|
||||
website: https://www.typescriptlang.org
|
||||
image: ts-logo-128.jpg
|
||||
```
|
||||
|
||||
`image` field accepts both local and external images.
|
||||
13
content/page/search/index.md
Normal file
13
content/page/search/index.md
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
---
|
||||
title: "Search"
|
||||
slug: "search"
|
||||
layout: "search"
|
||||
outputs:
|
||||
- html
|
||||
- json
|
||||
menu:
|
||||
main:
|
||||
weight: 3
|
||||
params:
|
||||
icon: search
|
||||
---
|
||||
BIN
content/post/hello-world/cover.jpg
Normal file
BIN
content/post/hello-world/cover.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 55 KiB |
20
content/post/hello-world/index.md
Normal file
20
content/post/hello-world/index.md
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
---
|
||||
title: Hello World
|
||||
description: Welcome to Hugo Theme Stack
|
||||
slug: hello-world
|
||||
date: 2022-03-06 00:00:00+0000
|
||||
image: cover.jpg
|
||||
categories:
|
||||
- Example Category
|
||||
tags:
|
||||
- Example Tag
|
||||
weight: 1 # You can add weight to some posts to override the default sorting (date descending)
|
||||
---
|
||||
|
||||
Welcome to Hugo theme Stack. This is your first post. Edit or delete it, then start writing!
|
||||
|
||||
For more information about this theme, check the documentation: https://stack.jimmycai.com/
|
||||
|
||||
Want a site like this? Check out [hugo-theme-stack-stater](https://github.com/CaiJimmy/hugo-theme-stack-starter)
|
||||
|
||||
> Photo by [Pawel Czerwinski](https://unsplash.com/@pawel_czerwinski) on [Unsplash](https://unsplash.com/)
|
||||
BIN
content/post/image-gallery/1.jpg
Normal file
BIN
content/post/image-gallery/1.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 14 KiB |
BIN
content/post/image-gallery/2.jpg
Normal file
BIN
content/post/image-gallery/2.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 37 KiB |
22
content/post/image-gallery/index.md
Normal file
22
content/post/image-gallery/index.md
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
---
|
||||
title: Image gallery
|
||||
description: Create beautiful interactive image gallery using Markdown
|
||||
date: 2023-08-26 00:00:00+0000
|
||||
image: 2.jpg
|
||||
---
|
||||
|
||||
Hugo theme Stack supports the creation of interactive image galleries using Markdown. It's powered by [PhotoSwipe](https://photoswipe.com/) and its syntax was inspired by [Typlog](https://typlog.com/).
|
||||
|
||||
To use this feature, the image must be in the same directory as the Markdown file, as it uses Hugo's page bundle feature to read the dimensions of the image. **External images are not supported.**
|
||||
|
||||
## Syntax
|
||||
|
||||
```markdown
|
||||
 
|
||||
```
|
||||
|
||||
## Result
|
||||
|
||||
 
|
||||
|
||||
> Photo by [mymind](https://unsplash.com/@mymind) and [Luke Chesser](https://unsplash.com/@lukechesser) on [Unsplash](https://unsplash.com/)
|
||||
150
content/post/markdown-syntax/index.md
Normal file
150
content/post/markdown-syntax/index.md
Normal file
|
|
@ -0,0 +1,150 @@
|
|||
---
|
||||
title: Markdown Syntax Guide
|
||||
date: 2023-09-07
|
||||
description: Sample article showcasing basic Markdown syntax and formatting for HTML elements.
|
||||
tags:
|
||||
- markdown
|
||||
- css
|
||||
- html
|
||||
- themes
|
||||
categories:
|
||||
- themes
|
||||
- syntax
|
||||
---
|
||||
|
||||
This article offers a sample of basic Markdown syntax that can be used in Hugo content files, also it shows whether basic HTML elements are decorated with CSS in a Hugo theme.
|
||||
|
||||
<!--more-->
|
||||
|
||||
## Headings
|
||||
|
||||
The following HTML `<h1>`—`<h6>` elements represent six levels of section headings. `<h1>` is the highest section level while `<h6>` is the lowest.
|
||||
|
||||
# H1
|
||||
## H2
|
||||
### H3
|
||||
#### H4
|
||||
##### H5
|
||||
###### H6
|
||||
|
||||
## Paragraph
|
||||
|
||||
Xerum, quo qui aut unt expliquam qui dolut labo. Aque venitatiusda cum, voluptionse latur sitiae dolessi aut parist aut dollo enim qui voluptate ma dolestendit peritin re plis aut quas inctum laceat est volestemque commosa as cus endigna tectur, offic to cor sequas etum rerum idem sintibus eiur? Quianimin porecus evelectur, cum que nis nust voloribus ratem aut omnimi, sitatur? Quiatem. Nam, omnis sum am facea corem alique molestrunt et eos evelece arcillit ut aut eos eos nus, sin conecerem erum fuga. Ri oditatquam, ad quibus unda veliamenimin cusam et facea ipsamus es exerum sitate dolores editium rerore eost, temped molorro ratiae volorro te reribus dolorer sperchicium faceata tiustia prat.
|
||||
|
||||
Itatur? Quiatae cullecum rem ent aut odis in re eossequodi nonsequ idebis ne sapicia is sinveli squiatum, core et que aut hariosam ex eat.
|
||||
|
||||
## Blockquotes
|
||||
|
||||
The blockquote element represents content that is quoted from another source, optionally with a citation which must be within a `footer` or `cite` element, and optionally with in-line changes such as annotations and abbreviations.
|
||||
|
||||
### Blockquote without attribution
|
||||
|
||||
> Tiam, ad mint andaepu dandae nostion secatur sequo quae.
|
||||
> **Note** that you can use *Markdown syntax* within a blockquote.
|
||||
|
||||
### Blockquote with attribution
|
||||
|
||||
> Don't communicate by sharing memory, share memory by communicating.<br>
|
||||
> — <cite>Rob Pike[^1]</cite>
|
||||
|
||||
[^1]: The above quote is excerpted from Rob Pike's [talk](https://www.youtube.com/watch?v=PAAkCSZUG1c) during Gopherfest, November 18, 2015.
|
||||
|
||||
## Tables
|
||||
|
||||
Tables aren't part of the core Markdown spec, but Hugo supports supports them out-of-the-box.
|
||||
|
||||
Name | Age
|
||||
--------|------
|
||||
Bob | 27
|
||||
Alice | 23
|
||||
|
||||
### Inline Markdown within tables
|
||||
|
||||
| Italics | Bold | Code |
|
||||
| -------- | -------- | ------ |
|
||||
| *italics* | **bold** | `code` |
|
||||
|
||||
| A | B | C | D | E | F |
|
||||
|----------------------------------------------------------|---------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------|------------------------------------------------------------|----------------------------------------------------------------------|
|
||||
| Lorem ipsum dolor sit amet, consectetur adipiscing elit. | Phasellus ultricies, sapien non euismod aliquam, dui ligula tincidunt odio, at accumsan nulla sapien eget ex. | Proin eleifend dictum ipsum, non euismod ipsum pulvinar et. Vivamus sollicitudin, quam in pulvinar aliquam, metus elit pretium purus | Proin sit amet velit nec enim imperdiet vehicula. | Ut bibendum vestibulum quam, eu egestas turpis gravida nec | Sed scelerisque nec turpis vel viverra. Vivamus vitae pretium sapien |
|
||||
|
||||
## Code Blocks
|
||||
### Code block with backticks
|
||||
|
||||
```html
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Example HTML5 Document</title>
|
||||
</head>
|
||||
<body>
|
||||
<p>Test</p>
|
||||
</body>
|
||||
</html>
|
||||
```
|
||||
|
||||
### Code block indented with four spaces
|
||||
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Example HTML5 Document</title>
|
||||
</head>
|
||||
<body>
|
||||
<p>Test</p>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
### Diff code block
|
||||
|
||||
```diff
|
||||
[dependencies.bevy]
|
||||
git = "https://github.com/bevyengine/bevy"
|
||||
rev = "11f52b8c72fc3a568e8bb4a4cd1f3eb025ac2e13"
|
||||
- features = ["dynamic"]
|
||||
+ features = ["jpeg", "dynamic"]
|
||||
```
|
||||
|
||||
### One line code block
|
||||
|
||||
```html
|
||||
<p>A paragraph</p>
|
||||
```
|
||||
|
||||
## List Types
|
||||
|
||||
### Ordered List
|
||||
|
||||
1. First item
|
||||
2. Second item
|
||||
3. Third item
|
||||
|
||||
### Unordered List
|
||||
|
||||
* List item
|
||||
* Another item
|
||||
* And another item
|
||||
|
||||
### Nested list
|
||||
|
||||
* Fruit
|
||||
* Apple
|
||||
* Orange
|
||||
* Banana
|
||||
* Dairy
|
||||
* Milk
|
||||
* Cheese
|
||||
|
||||
## Other Elements — abbr, sub, sup, kbd, mark
|
||||
|
||||
<abbr title="Graphics Interchange Format">GIF</abbr> is a bitmap image format.
|
||||
|
||||
H<sub>2</sub>O
|
||||
|
||||
X<sup>n</sup> + Y<sup>n</sup> = Z<sup>n</sup>
|
||||
|
||||
Press <kbd>CTRL</kbd> + <kbd>ALT</kbd> + <kbd>Delete</kbd> to end the session.
|
||||
|
||||
Most <mark>salamanders</mark> are nocturnal, and hunt for insects, worms, and other small creatures.
|
||||
40
content/post/math-typesetting/index.md
Normal file
40
content/post/math-typesetting/index.md
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
---
|
||||
title: Math Typesetting
|
||||
description: Math typesetting using KaTeX
|
||||
date: 2023-08-24 00:00:00+0000
|
||||
math: true
|
||||
---
|
||||
|
||||
Stack has built-in support for math typesetting using [KaTeX](https://katex.org/).
|
||||
|
||||
**It's not enabled by default side-wide,** but you can enable it for individual posts by adding `math: true` to the front matter. Or you can enable it side-wide by adding `math = true` to the `params.article` section in `config.toml`.
|
||||
|
||||
## Inline math
|
||||
|
||||
This is an inline mathematical expression: $\varphi = \dfrac{1+\sqrt5}{2}= 1.6180339887…$
|
||||
|
||||
```markdown
|
||||
$\varphi = \dfrac{1+\sqrt5}{2}= 1.6180339887…$
|
||||
```
|
||||
|
||||
## Block math
|
||||
|
||||
$$
|
||||
\varphi = 1+\frac{1} {1+\frac{1} {1+\frac{1} {1+\cdots} } }
|
||||
$$
|
||||
|
||||
```markdown
|
||||
$$
|
||||
\varphi = 1+\frac{1} {1+\frac{1} {1+\frac{1} {1+\cdots} } }
|
||||
$$
|
||||
```
|
||||
|
||||
$$
|
||||
f(x) = \int_{-\infty}^\infty\hat f(\xi)\,e^{2 \pi i \xi x}\,d\xi
|
||||
$$
|
||||
|
||||
```markdown
|
||||
$$
|
||||
f(x) = \int_{-\infty}^\infty\hat f(\xi)\,e^{2 \pi i \xi x}\,d\xi
|
||||
$$
|
||||
```
|
||||
BIN
content/post/shortcodes/cover.jpg
Normal file
BIN
content/post/shortcodes/cover.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 13 KiB |
42
content/post/shortcodes/index.md
Normal file
42
content/post/shortcodes/index.md
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
---
|
||||
title: Shortcodes
|
||||
description: Useful shortcodes that can be used in Markdown
|
||||
date: 2023-08-25 00:00:00+0000
|
||||
image: cover.jpg
|
||||
---
|
||||
|
||||
For more details, check out the [documentation](https://stack.jimmycai.com/writing/shortcodes).
|
||||
|
||||
## Bilibili video
|
||||
|
||||
{{< bilibili "BV1d4411N7zD" >}}
|
||||
|
||||
## Tencent video
|
||||
|
||||
{{< tencent "g0014r3khdw" >}}
|
||||
|
||||
## YouTube video
|
||||
|
||||
{{< youtube "0qwALOOvUik" >}}
|
||||
|
||||
## Generic video file
|
||||
|
||||
{{< video "https://www.w3schools.com/tags/movie.mp4" >}}
|
||||
|
||||
## Gist
|
||||
|
||||
{{< gist CaiJimmy e2751a943de10b2a5b3a8a6c2120cb86 >}}
|
||||
|
||||
## GitLab
|
||||
|
||||
{{< gitlab 2589724 >}}
|
||||
|
||||
## Quote
|
||||
|
||||
{{< quote author="A famous person" source="The book they wrote" url="https://en.wikipedia.org/wiki/Book">}}
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
|
||||
{{< /quote >}}
|
||||
|
||||
-----
|
||||
|
||||
> Photo by [Codioful](https://unsplash.com/@codioful) on [Unsplash](https://unsplash.com/photos/WDSN62Qdxuk)
|
||||
5
go.mod
Normal file
5
go.mod
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
module github.com/CaiJimmy/hugo-theme-stack-starter
|
||||
|
||||
go 1.17
|
||||
|
||||
require github.com/CaiJimmy/hugo-theme-stack/v3 v3.21.0 // indirect
|
||||
2
go.sum
Normal file
2
go.sum
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
github.com/CaiJimmy/hugo-theme-stack/v3 v3.21.0 h1:GT519sWiMhJCYO2xkxgjTvgGZsfP31Q79OURWGTT8/Y=
|
||||
github.com/CaiJimmy/hugo-theme-stack/v3 v3.21.0/go.mod h1:IPmCXiIxlFSLFYS0tOmYP6ySLviyeNVSabyvSuaxD+I=
|
||||
BIN
static/favicon.png
Normal file
BIN
static/favicon.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 639 B |
Loading…
Add table
Add a link
Reference in a new issue