chore: move content to exampleSite

* update dev and build command

chore: move contents to exampleSite

chore: add configs to exampleSite

chore: use tailwindcss/nesting

* add postcss-import
* move imports to the top

chore: add config for theme dev

chore: add compiled css

chore: fix last updated issue

chore: dont't ignore hugo_stats.json

chore: update index page layout
This commit is contained in:
Xin
2023-08-12 16:45:00 +01:00
parent 91fe140c8a
commit 52931107a3
35 changed files with 4042 additions and 143 deletions

View File

@ -0,0 +1,4 @@
---
title: Hextra Theme
toc: false
---

View File

@ -0,0 +1,5 @@
---
title: About
---
This is the about page.

View File

@ -0,0 +1,3 @@
---
title: "Hextra Blog"
---

View File

@ -0,0 +1,175 @@
---
title: Markdown
math: true
date: 2020-01-01
authors:
- name: John Doe
link: https://example.com/johndoe
image: https://example.com/johndoe.png
---
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 them out-of-the-box.
Name | Age
--------|------
Bob | 27
Alice | 23
#### Inline Markdown within tables
| Italics | Bold | Code |
| -------- | -------- | ------ |
| *italics* | **bold** | `code` |
## Code Blocks
### Code block with triple backticks
```
def say_hello():
print("Hello!")
```
```python
def say_hello():
print("Hello!")
```
### Code block with filename
```python {filename="hello.py"}
def say_hello():
print("Hello!")
```
### Code block highlight with line numbers
```python {linenos=table,hl_lines=[1, 2],linenostart=1}
def say_hello():
print("Hello!")
def main():
say_hello()
```
```python {linenos=table,hl_lines=[1, 2],linenostart=1,filename="hello.py"}
def say_hello():
print("Hello!")
def main():
say_hello()
```
## Diagrams
[Mermaid](https://github.com/mermaid-js/mermaid#readme) is a JavaScript based diagramming and charting tool that takes Markdown-inspired text definitions and creates diagrams dynamically in the browser.
```mermaid
sequenceDiagram
participant Alice
participant Bob
Alice->>John: Hello John, how are you?
loop Healthcheck
John->>John: Fight against hypochondria
end
Note right of John: Rational thoughts <br/>prevail!
John-->>Alice: Great!
John->>Bob: How about you?
Bob-->>John: Jolly good!
```
## 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
## Math
[KaTeX](https://github.com/KaTeX/KaTeX) is a fast math typesetting library for the web. It uses javascript for client-side rendering.
### Inline
```
This $\int\limits_1^\infty \frac{1}{k}\,dk$ is inline.
```
This $\int\limits_1^\infty \frac{1}{k}\,dk$ is inline.
### Separate Paragraph
```
$$f(x) = \int_{-\infty}^\infty \hat f(\xi)\,e^{2 \pi i \xi x} \,d\xi$$
```
$$f(x) = \int_{-\infty}^\infty \hat f(\xi)\,e^{2 \pi i \xi x} \,d\xi$$
## 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.

View File

@ -0,0 +1,5 @@
---
title: Test very long title to see how it looks
---
Hello world!

View File

@ -0,0 +1,4 @@
---
linkTitle: "Documentation"
title: Welcome to Hextra
---

View File

@ -0,0 +1,12 @@
---
title: Components
---
Hextra provides a variety of built-in components based on [Hugo Shortcodes](https://gohugo.io/content-management/shortcodes/).
{{< cards >}}
{{< card link="callouts" title="Callouts" icon="warning" >}}
{{< card link="cards" title="Cards" icon="cards" >}}
{{< card link="steps" title="Steps" icon="one" >}}
{{< /cards >}}

View File

@ -0,0 +1,74 @@
---
title: Callout Component
linkTitle: Callout
---
A built-in component to show important information to the reader.
## Example
{{< callout emoji="👾">}}
A **callout** is a short piece of text intended to attract attention.
{{< /callout >}}
{{< callout type="info" >}}
A **callout** is a short piece of text intended to attract attention.
{{< /callout >}}
{{< callout type="warning" >}}
A **callout** is a short piece of text intended to attract attention.
{{< /callout >}}
{{< callout type="error" >}}
A **callout** is a short piece of text intended to attract attention.
{{< /callout >}}
## Usage
### Default
{{< callout emoji="🌐">}}
Hugo can be used to create a wide variety of websites, including blogs, portfolios, documentation sites, and more.
{{< /callout >}}
```markdown
{{</* callout emoji="🌐" */>}}
Hugo can be used to create a wide variety of websites, including blogs, portfolios, documentation sites, and more.
{{</* /callout */>}}
```
### Info
{{< callout type="info" >}}
Please visit GitHub to see the latest releases.
{{< /callout >}}
```markdown
{{</* callout type="info" */>}}
Please visit GitHub to see the latest releases.
{{</* /callout */>}}
```
### Warning
{{< callout type="warning" >}}
This API will be deprecated in the next version.
{{< /callout >}}
```markdown
{{</* callout type="warning" */>}}
A **callout** is a short piece of text intended to attract attention.
{{</* /callout */>}}
```
### Error
{{< callout type="error" >}}
Something went wrong and it's going to explode.
{{< /callout >}}
```markdown
{{</* callout type="error" */>}}
Something went wrong and it's going to explode.
{{</* /callout */>}}
```

View File

@ -0,0 +1,22 @@
---
title: Cards Component
linkTitle: Cards
---
## Example
{{< cards >}}
{{< card link="/" title="Callout" icon="warning" >}}
{{< card link="/" title="GitHub" icon="github" >}}
{{< card link="/" title="No Icon" >}}
{{< /cards >}}
## Usage
```
{{</* cards */>}}
{{</* card link="/" title="Callout" icon="warning" */>}}
{{</* card link="/" title="GitHub" icon="github" */>}}
{{</* card link="/" title="No Icon" */>}}
{{</* /cards */>}}
```

View File

@ -0,0 +1,40 @@
---
title: Steps
---
A built-in component to display a series of steps.
## Example
{{< steps >}}
### Step 1
This is the first step.
### Step 2
This is the second step.
### Step 3
This is the third step.
{{< /steps >}}
## Usage
Put Markdown h3 header within `steps` shortcode.
```markdown
{{</* steps */>}}
### Step 1
This is the first step.
### Step 2
This is the second step.
{{</* /steps */>}}
```

View File

@ -0,0 +1,51 @@
---
title: Tabs
---
## Example
{{< tabs items="JSON,YAML,TOML" >}}
{{< tab >}}**JSON**: JavaScript Object Notation (JSON) is a standard text-based format for representing structured data based on JavaScript object syntax.{{< /tab >}}
{{< tab >}}**YAML**: YAML is a human-readable data serialization language.{{< /tab >}}
{{< tab >}}**TOML**: TOML aims to be a minimal configuration file format that's easy to read due to obvious semantics.{{< /tab >}}
{{< /tabs >}}
## Usage
### Default
```
{{</* tabs items="JSON,YAML,TOML" */>}}
{{</* tab */>}}**JSON**: JavaScript Object Notation (JSON) is a standard text-based format for representing structured data based on JavaScript object syntax.{{</* /tab */>}}
{{</* tab */>}}**YAML**: YAML is a human-readable data serialization language.{{</* /tab */>}}
{{</* tab */>}}**TOML**: TOML aims to be a minimal configuration file format that's easy to read due to obvious semantics.{{</* /tab */>}}
{{</* /tabs */>}}
```
### Specify Selected Index
Use `defaultIndex` property to specify the selected tab. The index starts from 0.
```
{{</* tabs items="JSON,YAML,TOML" defaultIndex="1" */>}}
{{</* tab */>}}**JSON**: JavaScript Object Notation (JSON) is a standard text-based format for representing structured data based on JavaScript object syntax.{{</* /tab */>}}
{{</* tab */>}}**YAML**: YAML is a human-readable data serialization language.{{</* /tab */>}}
{{</* tab */>}}**TOML**: TOML aims to be a minimal configuration file format that's easy to read due to obvious semantics.{{</* /tab */>}}
{{</* /tabs */>}}
```
The `YAML` tab will be selected by default.
{{< tabs items="JSON,YAML,TOML" defaultIndex="1" >}}
{{< tab >}}**JSON**: JavaScript Object Notation (JSON) is a standard text-based format for representing structured data based on JavaScript object syntax.{{< /tab >}}
{{< tab >}}**YAML**: YAML is a human-readable data serialization language.{{< /tab >}}
{{< tab >}}**TOML**: TOML aims to be a minimal configuration file format that's easy to read due to obvious semantics.{{< /tab >}}
{{< /tabs >}}

View File

@ -0,0 +1,12 @@
---
title: Guide
weight: 2
---
Guide to the project.
{{< cards >}}
{{< card link="/" title="Callout" icon="warning" >}}
{{< card link="/" title="GitHub" icon="github" >}}
{{< card link="/" title="No Icon" >}}
{{< /cards >}}

View File

@ -0,0 +1,5 @@
---
title: Advanced
---
Advanced topics.

View File

@ -0,0 +1,170 @@
---
title: Markdown
math: true
---
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 them out-of-the-box.
Name | Age
--------|------
Bob | 27
Alice | 23
#### Inline Markdown within tables
| Italics | Bold | Code |
| -------- | -------- | ------ |
| *italics* | **bold** | `code` |
## Code Blocks
### Code block with triple backticks
```
def say_hello():
print("Hello!")
```
```python
def say_hello():
print("Hello!")
```
### Code block with filename
```python {filename="hello.py"}
def say_hello():
print("Hello!")
```
### Code block highlight with line numbers
```python {linenos=table,hl_lines=[1, 2],linenostart=1}
def say_hello():
print("Hello!")
def main():
say_hello()
```
```python {linenos=table,hl_lines=[1, 2],linenostart=1,filename="hello.py"}
def say_hello():
print("Hello!")
def main():
say_hello()
```
## Diagrams
[Mermaid](https://github.com/mermaid-js/mermaid#readme) is a JavaScript based diagramming and charting tool that takes Markdown-inspired text definitions and creates diagrams dynamically in the browser.
```mermaid
sequenceDiagram
participant Alice
participant Bob
Alice->>John: Hello John, how are you?
loop Healthcheck
John->>John: Fight against hypochondria
end
Note right of John: Rational thoughts <br/>prevail!
John-->>Alice: Great!
John->>Bob: How about you?
Bob-->>John: Jolly good!
```
## 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
## Math
[KaTeX](https://github.com/KaTeX/KaTeX) is a fast math typesetting library for the web. It uses javascript for client-side rendering.
### Inline
```
This $\int\limits_1^\infty \frac{1}{k}\,dk$ is inline.
```
This $\int\limits_1^\infty \frac{1}{k}\,dk$ is inline.
### Separate Paragraph
```
$$f(x) = \int_{-\infty}^\infty \hat f(\xi)\,e^{2 \pi i \xi x} \,d\xi$$
```
$$f(x) = \int_{-\infty}^\infty \hat f(\xi)\,e^{2 \pi i \xi x} \,d\xi$$
## 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.

View File

@ -0,0 +1,5 @@
---
title: Organize Files
---
Organize files in the project.

View File

@ -0,0 +1,5 @@
---
title: はじめに
---
プロジェクトの紹介。

View File

@ -0,0 +1,6 @@
---
title: Introduction
weight: 1
---
Hextra is a modern, responsive Hugo theme built with [Tailwind CSS](https://tailwindcss.com/).

View File

@ -0,0 +1,3 @@
---
title: Showcase
---

5
exampleSite/go.mod Normal file
View File

@ -0,0 +1,5 @@
module github.com/imfing/hextra/exampleSite
go 1.20
replace github.com/imfing/hextra => ../

3
exampleSite/hugo.work Normal file
View File

@ -0,0 +1,3 @@
go 1.20
use ../

74
exampleSite/hugo.yaml Normal file
View File

@ -0,0 +1,74 @@
# Configuration
baseURL: "https://example.com/"
title: "Hextra"
enableRobotsTXT: true
enableGitInfo: true
# hasCJKLanguage: true
outputs:
home: [HTML]
page: [HTML]
section: [HTML, RSS]
defaultContentLanguage: en
languages:
en:
languageName: English
weight: 1
title: Hextra
ja:
languageName: 日本語
weight: 2
title: "Hextra テーマ"
module:
hugoVersion:
extended: true
min: "0.111.0"
workspace: hugo.work
imports:
path: github.com/imfing/hextra
markup:
goldmark:
renderer:
unsafe: true
highlight:
noClasses: false
menu:
main:
- name: Documentation
pageRef: /docs
weight: 1
- name: Blog
pageRef: /blog
weight: 2
- name: About
pageRef: /about
weight: 3
- name: Search
weight: 4
params:
type: search
placeholder: Search Hextra docs...
- name: GitHub
weight: 5
url: "https://github.com/imfing/hextra"
params:
icon: github
sidebar:
- name: More
params:
type: separator
weight: 1
- name: "Hugo Docs ↗"
url: "https://gohugo.io/documentation/"
weight: 2
params:
displayUpdatedDate: true
dateFormat: "January 2, 2006"