-
- {{< icon "triangle-exclamation" >}}
-
-
- This is a demo of the background layout.
-
-
-
+{{< cta url="/docs/installation/" label="Get started" >}}
+
+{{< cta url="/docs/" label="Explore the docs" style="outline" >}}
+{{< feature-grid >}}
+{{< feature icon="list-check" title="Make it yours" url="/docs/configuration/" >}}
+A coherent system of layouts, colours, typography, and content controls.
+{{< /feature >}}
+{{< feature icon="code" title="Compose faster" url="/docs/shortcodes/" label="Browse shortcodes" >}}
+Useful components for richer stories, clearer documentation, and less custom glue.
+{{< /feature >}}
+{{< feature icon="heart" title="Made in the open" url="/users/" >}}
+Explore real sites, community contributions, and patterns that hold up in production.
+{{< /feature >}}
+{{< /feature-grid >}}
-```shell
-npx blowfish-tools
-```
-
-{{< youtubeLite id="SgXhGb-7QbU" label="Blowfish-tools demo" >}}
-
+{{< alert "circle-info" >}}
+This homepage uses Blowfish's built-in `landing` layout and standard shortcodes. No custom homepage template is required.
+{{< /alert >}}
diff --git a/exampleSite/content/docs/homepage-layout/index.md b/exampleSite/content/docs/homepage-layout/index.md
index dd4c36c9..13177473 100644
--- a/exampleSite/content/docs/homepage-layout/index.md
+++ b/exampleSite/content/docs/homepage-layout/index.md
@@ -9,7 +9,7 @@ series: ["Documentation"]
series_order: 5
---
-Blowfish provides a fully flexible homepage layout. There are two main templates to choose from with additional settings to adjust the design. Alternatively, you can also provide your own template and have complete control over the homepage content.
+Blowfish provides flexible homepage layouts with settings to adjust each design. Alternatively, you can also provide your own template and have complete control over the homepage content.
The layout of the homepage is controlled by the `homepage.layout` setting in the `params.toml` configuration file. Additionally, all layouts have the option to include a listing of [recent articles](#recent-articles).
@@ -57,6 +57,12 @@ The card layout is an extension of the page layout. It provides the same level o
To enable the Card layout, set `homepage.layout = "card"` and `homepage.homepageImage` in the `params.toml` configuration file.
+## Landing layout
+
+The Landing layout is designed for product sites, documentation hubs, and personal sites that need a stronger opening statement. It gives homepage content a spacious, editorial hero treatment while still rendering standard Markdown and Blowfish shortcodes, so the full page stays portable and easy to maintain.
+
+To enable the Landing layout, set `homepage.layout = "landing"` in the `params.toml` configuration file. Use `content/_index.md` for the title, lead, calls to action, feature grids, and other content.
+
## Custom layout
@@ -68,7 +74,7 @@ With the configuration value set, create a new `custom.html` file and place it i
To include [recent articles](#recent-articles) on the custom layout, use the `recent-articles/main.html` partial.
-As an example, the [homepage]({{< ref "/" >}}) on this site uses the custom layout to allow toggling between the profile and page layouts. Visit the [GitHub repo](https://github.com/nunocoracao/blowfish/blob/main/exampleSite/layouts/partials/home/custom.html) to see how it works.
+The included example site uses the built-in Landing layout and standard content shortcodes. Visit the [GitHub repo](https://github.com/nunocoracao/blowfish/tree/main/exampleSite) to see how it is configured.
## Recent articles
diff --git a/exampleSite/content/docs/shortcodes/index.md b/exampleSite/content/docs/shortcodes/index.md
index 0c64c569..a6d29962 100644
--- a/exampleSite/content/docs/shortcodes/index.md
+++ b/exampleSite/content/docs/shortcodes/index.md
@@ -936,7 +936,7 @@ The `tabs` shortcode is commonly used to present different variants of a particu
| `default` | **Optional.** Label of the tab to be active by default. If not set, the first tab will be active. |
| `label` | **Required.** The text label displayed on the tab button. |
| `icon` | **Optional.** Icon name to display before the label. |
-| `md` | **Optional.** Render tab content as Markdown (default `true`). Set `md=false` to allow nested shortcodes inside tab content. |
+| `md` | **Optional.** Render tab content as Markdown (default `true`). Use `md=false` when the content is already HTML. |
**Example 1: Basic Usage**
@@ -963,7 +963,7 @@ The `tabs` shortcode is commonly used to present different variants of a particu
```
{{* /tab */>}}
- {{* tab label="Linux" md=false */>}}
+ {{* tab label="Linux" */>}}
{{* alert */>}}See [documentation](https://code.visualstudio.com/docs/setup/linux#_install-vs-code-on-linux).{{* /alert */>}}
{{* /tab */>}}
@@ -994,12 +994,38 @@ The `tabs` shortcode is commonly used to present different variants of a particu
```
{{< /tab >}}
- {{< tab label="Linux" md=false >}}
+ {{< tab label="Linux" >}}
{{< alert >}}See [documentation](https://code.visualstudio.com/docs/setup/linux#_install-vs-code-on-linux).{{< /alert >}}
{{< /tab >}}
{{< /tabs >}}
+Nested shortcodes are supported with the default Markdown behaviour. For example, an accordion can live inside a tab without its generated HTML being rendered as Markdown a second time:
+
+`````md
+{{* tabs */>}}
+{{* tab label="Details" */>}}
+{{* accordion mode="open" */>}}
+{{* accordionItem title="What is included?" */>}}
+- Responsive behaviour
+- Accessible markup
+{{* /accordionItem */>}}
+{{* /accordion */>}}
+{{* /tab */>}}
+{{* /tabs */>}}
+`````
+
+{{< tabs >}}
+{{< tab label="Details" >}}
+{{< accordion mode="open" >}}
+{{< accordionItem title="What is included?" >}}
+- Responsive behaviour
+- Accessible markup
+{{< /accordionItem >}}
+{{< /accordion >}}
+{{< /tab >}}
+{{< /tabs >}}
+
**Example 2: With Group, Default, and Icon**
`````md
diff --git a/exampleSite/content/samples/emoji/index.de.md b/exampleSite/content/samples/emoji/index.de.md
index e9815e0a..5a0df583 100644
--- a/exampleSite/content/samples/emoji/index.de.md
+++ b/exampleSite/content/samples/emoji/index.de.md
@@ -17,4 +17,4 @@ Emoji-Ersetzungen erfolgen in Blowfish automatisch, sodass Sie Kurzcode in Ihren
**Beispiel:** `see_no_evil` :see_no_evil:, `hear_no_evil` :hear_no_evil:, `speak_no_evil` :speak_no_evil:.
-Der [Emoji-Spickzettel](http://www.emoji-cheat-sheet.com/) ist eine nützliche Referenz für Emoji-Kurzcodes.
+Hugos [Emoji-Referenz](https://gohugo.io/quick-reference/emojis/) enthält unterstützte Emoji-Kurzcodes.
diff --git a/exampleSite/content/samples/emoji/index.es.md b/exampleSite/content/samples/emoji/index.es.md
index 9b117be9..d4b751a3 100644
--- a/exampleSite/content/samples/emoji/index.es.md
+++ b/exampleSite/content/samples/emoji/index.es.md
@@ -17,4 +17,4 @@ Los reemplazos de emoji son automáticos en Blowfish, por lo que puedes usar có
**Ejemplo:** `see_no_evil` :see_no_evil:, `hear_no_evil` :hear_no_evil:, `speak_no_evil` :speak_no_evil:.
-La [hoja de trucos de Emoji](http://www.emoji-cheat-sheet.com/) es una referencia útil para los códigos abreviados de emoji.
+La [referencia de emoji de Hugo](https://gohugo.io/quick-reference/emojis/) contiene los códigos abreviados compatibles.
diff --git a/exampleSite/content/samples/emoji/index.fr.md b/exampleSite/content/samples/emoji/index.fr.md
index 341937f5..cdac932d 100644
--- a/exampleSite/content/samples/emoji/index.fr.md
+++ b/exampleSite/content/samples/emoji/index.fr.md
@@ -17,4 +17,4 @@ Les remplacements d'emoji sont automatiques dans Blowfish, vous pouvez donc util
**Exemple :** `see_no_evil` :see_no_evil:, `hear_no_evil` :hear_no_evil:, `speak_no_evil` :speak_no_evil:.
-L'[aide-mémoire Emoji](http://www.emoji-cheat-sheet.com/) est une référence utile pour les codes abrégés emoji.
+La [référence emoji de Hugo](https://gohugo.io/quick-reference/emojis/) contient les codes abrégés pris en charge.
diff --git a/exampleSite/content/samples/emoji/index.it.md b/exampleSite/content/samples/emoji/index.it.md
index 2a27aa62..7264803c 100755
--- a/exampleSite/content/samples/emoji/index.it.md
+++ b/exampleSite/content/samples/emoji/index.it.md
@@ -17,4 +17,4 @@ Emoji replacements are automatic throughout Blowfish, so you can use shorthand c
**Example:** `see_no_evil` :see_no_evil:, `hear_no_evil` :hear_no_evil:, `speak_no_evil` :speak_no_evil:.
-The [Emoji cheat sheet](http://www.emoji-cheat-sheet.com/) is a useful reference for emoji shorthand codes.
+Use Hugo's [emoji reference](https://gohugo.io/quick-reference/emojis/) for supported shorthand codes.
diff --git a/exampleSite/content/samples/emoji/index.ja.md b/exampleSite/content/samples/emoji/index.ja.md
index a8d91e72..261b9174 100755
--- a/exampleSite/content/samples/emoji/index.ja.md
+++ b/exampleSite/content/samples/emoji/index.ja.md
@@ -17,4 +17,4 @@ type: 'sample'
**例:** `see_no_evil` :see_no_evil:, `hear_no_evil` :hear_no_evil:, `speak_no_evil` :speak_no_evil:
-[絵文字チートシート](http://www.emoji-cheat-sheet.com/)は絵文字ショートハンドコードのための便利な参照ページです。
+対応する絵文字ショートハンドコードは、Hugo の[絵文字リファレンス](https://gohugo.io/quick-reference/emojis/)を参照してください。
diff --git a/exampleSite/content/samples/emoji/index.md b/exampleSite/content/samples/emoji/index.md
index 2a27aa62..7264803c 100755
--- a/exampleSite/content/samples/emoji/index.md
+++ b/exampleSite/content/samples/emoji/index.md
@@ -17,4 +17,4 @@ Emoji replacements are automatic throughout Blowfish, so you can use shorthand c
**Example:** `see_no_evil` :see_no_evil:, `hear_no_evil` :hear_no_evil:, `speak_no_evil` :speak_no_evil:.
-The [Emoji cheat sheet](http://www.emoji-cheat-sheet.com/) is a useful reference for emoji shorthand codes.
+Use Hugo's [emoji reference](https://gohugo.io/quick-reference/emojis/) for supported shorthand codes.
diff --git a/exampleSite/content/samples/emoji/index.pt-br.md b/exampleSite/content/samples/emoji/index.pt-br.md
index 213f8642..ce0c90da 100644
--- a/exampleSite/content/samples/emoji/index.pt-br.md
+++ b/exampleSite/content/samples/emoji/index.pt-br.md
@@ -17,4 +17,4 @@ As substituições de emoji são automáticas em todo o Blowfish, então você p
**Exemplo:** `see_no_evil` :see_no_evil:, `hear_no_evil` :hear_no_evil:, `speak_no_evil` :speak_no_evil:.
-A [folha de dicas de Emoji](http://www.emoji-cheat-sheet.com/) é uma referência útil para códigos abreviados de emoji.
+Use a [referência de emojis do Hugo](https://gohugo.io/quick-reference/emojis/) para consultar os códigos abreviados compatíveis.
diff --git a/exampleSite/content/samples/emoji/index.pt-pt.md b/exampleSite/content/samples/emoji/index.pt-pt.md
index 376f69b1..1e0dbd0e 100644
--- a/exampleSite/content/samples/emoji/index.pt-pt.md
+++ b/exampleSite/content/samples/emoji/index.pt-pt.md
@@ -17,4 +17,4 @@ As substituições de emoji são automáticas em todo o Blowfish, pelo que pode
**Exemplo:** `see_no_evil` :see_no_evil:, `hear_no_evil` :hear_no_evil:, `speak_no_evil` :speak_no_evil:.
-A [folha de referência de Emoji](http://www.emoji-cheat-sheet.com/) é uma referência útil para códigos abreviados de emoji.
+Consulte a [referência de emojis do Hugo](https://gohugo.io/quick-reference/emojis/) para os códigos abreviados suportados.
diff --git a/exampleSite/content/samples/emoji/index.zh-cn.md b/exampleSite/content/samples/emoji/index.zh-cn.md
index 0e0e6e37..05824bc2 100755
--- a/exampleSite/content/samples/emoji/index.zh-cn.md
+++ b/exampleSite/content/samples/emoji/index.zh-cn.md
@@ -17,4 +17,4 @@ Blowfish 会自动的进行表情符号渲染,因此您可以在内容和 fron
**例如:** `see_no_evil` :see_no_evil:, `hear_no_evil` :hear_no_evil:, `speak_no_evil` :speak_no_evil:.
-[Emoji 清单](http://www.emoji-cheat-sheet.com/) 可以很方便的查找 Emoji 对应的表情代码。
+请使用 Hugo 的 [Emoji 参考](https://gohugo.io/quick-reference/emojis/) 查阅受支持的简写代码。
diff --git a/exampleSite/layouts/partials/home/custom.html b/exampleSite/layouts/partials/home/custom.html
index 19933bb2..3499f703 100644
--- a/exampleSite/layouts/partials/home/custom.html
+++ b/exampleSite/layouts/partials/home/custom.html
@@ -1,70 +1,32 @@
{{ $jsHome := resources.Get "js/home.js" | resources.Minify | resources.Fingerprint (.Site.Params.fingerprintAlgorithm | default "sha512") }}
-
-
-
-
-
-
-
-
-
- {{ partial "icon.html" "wand-magic-sparkles" }}
- The modern Hugo theme toolkit
-
-
- Build a site that feels unmistakably yours.
-
-
- Blowfish combines expressive layouts, thoughtful defaults, and practical building blocks for blogs, docs, portfolios, and everything in between.
-