mirror of
https://github.com/nunocoracao/blowfish.git
synced 2026-01-30 15:31:52 +00:00
Compare commits
34 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| ea0a6c3698 | |||
| 6e4ed17ab7 | |||
| d889efa6d4 | |||
| 0d9f458c52 | |||
| 7e3a8c1226 | |||
| cc1c2d70e0 | |||
| de2d75eee9 | |||
| dbcce7f34b | |||
| 12471e0aa3 | |||
| a15af8eca6 | |||
| 32fcb1a3be | |||
| 0219bb263c | |||
| b27d78945c | |||
| 20e90ec4d4 | |||
| 59e5daa31f | |||
| a9e6215540 | |||
| 3b265eaa0d | |||
| 3a158cf347 | |||
| 123add8b6c | |||
| b19e10d4a4 | |||
| a4ea872dd7 | |||
| 034be4227b | |||
| 666b12ab35 | |||
| 84174baea2 | |||
| 544fa955f6 | |||
| 301f179fb0 | |||
| 3cd3c6ee97 | |||
| 55bb04f362 | |||
| d69989892b | |||
| adce4c7ea2 | |||
| 553480f1df | |||
| 5b93191548 | |||
| ce4cbd3c75 | |||
| 2991e0289d |
@@ -1,5 +1,8 @@
|
|||||||
# Blowfish
|
# Blowfish
|
||||||
|
|
||||||
|
<a target="_blank" href="https://www.buymeacoffee.com/nunocoracao"><img class="nozoom" src="https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=nunocoracao&button_colour=FFDD00&font_colour=000000&font_family=Cookie&outline_colour=000000&coffee_colour=ffffff" /></a>
|
||||||
|
<a target="_blank" href="http://tee.pub/lic/qwSlWVBL5zc"><img class="nozoom" src="https://img.buymeacoffee.com/button-api/?text=Merch Store &emoji=💎&slug=nunocoracao&button_colour=5F7FFF&font_colour=ffffff&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00" /></a>
|
||||||
|
|
||||||
[](https://github.com/nunocoracao/blowfish/actions/workflows/pages.yml)
|
[](https://github.com/nunocoracao/blowfish/actions/workflows/pages.yml)
|
||||||
[](https://github.com/gohugoio/hugo/releases/tag/v0.87.0)
|
[](https://github.com/gohugoio/hugo/releases/tag/v0.87.0)
|
||||||
[](https://github.com/nunocoracao/blowfish/blob/main/LICENSE)
|
[](https://github.com/nunocoracao/blowfish/blob/main/LICENSE)
|
||||||
@@ -11,6 +14,7 @@ Blowfish is designed to be a powerful, lightweight theme for [Hugo](https://gohu
|
|||||||
|
|
||||||
🌏 [Demo site](https://nunocoracao.github.io/blowfish/)
|
🌏 [Demo site](https://nunocoracao.github.io/blowfish/)
|
||||||
📑 [Theme documentation](https://nunocoracao.github.io/blowfish/docs/)
|
📑 [Theme documentation](https://nunocoracao.github.io/blowfish/docs/)
|
||||||
|
💎 [Merch Store](http://tee.pub/lic/qwSlWVBL5zc)
|
||||||
🐛 [Bug reports & issues](https://github.com/nunocoracao/blowfish/issues)
|
🐛 [Bug reports & issues](https://github.com/nunocoracao/blowfish/issues)
|
||||||
💡 [Questions & feature requests](https://github.com/nunocoracao/blowfish/discussions)
|
💡 [Questions & feature requests](https://github.com/nunocoracao/blowfish/discussions)
|
||||||
|
|
||||||
@@ -31,6 +35,7 @@ Blowfish is designed to be a powerful, lightweight theme for [Hugo](https://gohu
|
|||||||
- Flexible with any content types, taxonomies and menus
|
- Flexible with any content types, taxonomies and menus
|
||||||
- Multilingual content support inlcuding support for RTL languages
|
- Multilingual content support inlcuding support for RTL languages
|
||||||
- Ability to link to posts on third-party websites
|
- Ability to link to posts on third-party websites
|
||||||
|
- Buymeacoffee integration
|
||||||
- Client-side site search powered by Fuse.js
|
- Client-side site search powered by Fuse.js
|
||||||
- Diagrams and visualisations using Mermaid
|
- Diagrams and visualisations using Mermaid
|
||||||
- Charts using Chart.js
|
- Charts using Chart.js
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
/*! Blowfish | MIT License | https://github.com/nunocoracao/blowfish */
|
/*! Blowfish | MIT License | https://github.com/nunocoracao/blowfish */
|
||||||
|
|
||||||
/*! tailwindcss v3.2.3 | MIT License | https://tailwindcss.com */
|
/*! tailwindcss v3.2.4 | MIT License | https://tailwindcss.com */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
|
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 519 KiB |
@@ -94,6 +94,13 @@ enableCodeCopy = true
|
|||||||
# site = "ABC12345"
|
# site = "ABC12345"
|
||||||
# domain = "llama.yoursite.com"
|
# domain = "llama.yoursite.com"
|
||||||
|
|
||||||
|
[buymeacoffee]
|
||||||
|
# identifier = ""
|
||||||
|
# globalWidget = true
|
||||||
|
# globalWidgetMessage = "Hello"
|
||||||
|
# globalWidgetColor = "#FFDD00"
|
||||||
|
# globalWidgetPosition = "Right"
|
||||||
|
|
||||||
[verification]
|
[verification]
|
||||||
# google = ""
|
# google = ""
|
||||||
# bing = ""
|
# bing = ""
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
{
|
{
|
||||||
|
"links": {
|
||||||
"email": {
|
"email": {
|
||||||
"icon": "email",
|
"icon": "email",
|
||||||
"title": "sharing.email",
|
"title": "sharing.email",
|
||||||
@@ -29,4 +30,5 @@
|
|||||||
"title": "sharing.twitter",
|
"title": "sharing.twitter",
|
||||||
"url": "https://twitter.com/intent/tweet/?url=%s&text=%s"
|
"url": "https://twitter.com/intent/tweet/?url=%s&text=%s"
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,17 +30,22 @@
|
|||||||
pageRef = "users"
|
pageRef = "users"
|
||||||
weight = 40
|
weight = 40
|
||||||
|
|
||||||
|
[[main]]
|
||||||
|
name = "Merch"
|
||||||
|
url = "http://tee.pub/lic/qwSlWVBL5zc"
|
||||||
|
weight = 50
|
||||||
|
|
||||||
[[main]]
|
[[main]]
|
||||||
identifier = "github"
|
identifier = "github"
|
||||||
pre = "github"
|
pre = "github"
|
||||||
url = "https://github.com/nunocoracao/blowfish"
|
url = "https://github.com/nunocoracao/blowfish"
|
||||||
weight = 50
|
weight = 60
|
||||||
|
|
||||||
[[main]]
|
[[main]]
|
||||||
identifier = "twitter"
|
identifier = "twitter"
|
||||||
pre = "twitter"
|
pre = "twitter"
|
||||||
url = "https://twitter.com/burufugu"
|
url = "https://twitter.com/burufugu"
|
||||||
weight = 60
|
weight = 70
|
||||||
|
|
||||||
|
|
||||||
# -- Footer Menu --
|
# -- Footer Menu --
|
||||||
|
|||||||
@@ -94,6 +94,13 @@ mainSections = ["docs"]
|
|||||||
# site = "ABC12345"
|
# site = "ABC12345"
|
||||||
# domain = "llama.yoursite.com"
|
# domain = "llama.yoursite.com"
|
||||||
|
|
||||||
|
[buymeacoffee]
|
||||||
|
identifier = "nunocoracao"
|
||||||
|
globalWidget = true
|
||||||
|
globalWidgetMessage = ""
|
||||||
|
globalWidgetColor = "#FFDD00"
|
||||||
|
globalWidgetPosition = "Right"
|
||||||
|
|
||||||
[verification]
|
[verification]
|
||||||
# google = ""
|
# google = ""
|
||||||
# bing = ""
|
# bing = ""
|
||||||
|
|||||||
@@ -3,6 +3,12 @@ title: "Welcome to Blowfish! :tada:"
|
|||||||
description: "This is a demo of the Blowfish theme for Hugo."
|
description: "This is a demo of the Blowfish theme for Hugo."
|
||||||
---
|
---
|
||||||
|
|
||||||
|
<!--center style="display:flex;align-items:center;flex-wrap:wrap;justify-content:space-evenly;">
|
||||||
|
<a target="_blank" href="https://www.buymeacoffee.com/nunocoracao"><img class="nozoom" src="https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=&slug=nunocoracao&button_colour=FFDD00&font_colour=000000&font_family=Cookie&outline_colour=000000&coffee_colour=ffffff" /></a>
|
||||||
|
|
||||||
|
<a target="_blank" href="http://tee.pub/lic/qwSlWVBL5zc"><img class="nozoom" src="https://img.buymeacoffee.com/button-api/?text=Merch Store &emoji=💎&slug=nunocoracao&button_colour=5F7FFF&font_colour=ffffff&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00" /></a>
|
||||||
|
</center-->
|
||||||
|
|
||||||
This is a demo site built entirely using Blowfish. It also contains a complete set of [theme documentation]({{< ref "docs" >}}). Blowfish is flexible and is great for both static page-based content (like this demo) or a traditional blog with a feed of recent posts.
|
This is a demo site built entirely using Blowfish. It also contains a complete set of [theme documentation]({{< ref "docs" >}}). Blowfish is flexible and is great for both static page-based content (like this demo) or a traditional blog with a feed of recent posts.
|
||||||
|
|
||||||
<div class="flex px-4 py-2 mb-8 text-base rounded-md bg-primary-100 dark:bg-primary-900">
|
<div class="flex px-4 py-2 mb-8 text-base rounded-md bg-primary-100 dark:bg-primary-900">
|
||||||
|
|||||||
@@ -125,7 +125,7 @@ Many of the article defaults here can be overridden on a per article basis by sp
|
|||||||
|
|
||||||
<!-- prettier-ignore-start -->
|
<!-- prettier-ignore-start -->
|
||||||
| Name | Default | Description |
|
| Name | Default | Description |
|
||||||
| ------------------------------- | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
| ----------------------------------- | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||||
| `colorScheme` | `"blowfish"` | The theme colour scheme to use. Valid values are `blowfish` (default), `avocado`, `ocean`, `fire` and `slate`. Refer to the [Colour Schemes]({{< ref "getting-started#colour-schemes" >}}) section for more details. |
|
| `colorScheme` | `"blowfish"` | The theme colour scheme to use. Valid values are `blowfish` (default), `avocado`, `ocean`, `fire` and `slate`. Refer to the [Colour Schemes]({{< ref "getting-started#colour-schemes" >}}) section for more details. |
|
||||||
| `defaultAppearance` | `"light"` | The default theme appearance, either `light` or `dark`. |
|
| `defaultAppearance` | `"light"` | The default theme appearance, either `light` or `dark`. |
|
||||||
| `autoSwitchAppearance` | `true` | Whether the theme appearance automatically switches based upon the visitor's operating system preference. Set to `false` to force the site to always use the `defaultAppearance`. |
|
| `autoSwitchAppearance` | `true` | Whether the theme appearance automatically switches based upon the visitor's operating system preference. Set to `false` to force the site to always use the `defaultAppearance`. |
|
||||||
@@ -137,6 +137,7 @@ Many of the article defaults here can be overridden on a per article basis by sp
|
|||||||
| `showLikes` | _Not set_ | Whether or not articles and list likes are displayed. This requires firebase integrations to be enabled, look below. |
|
| `showLikes` | _Not set_ | Whether or not articles and list likes are displayed. This requires firebase integrations to be enabled, look below. |
|
||||||
| `robots` | _Not set_ | String that indicates how robots should handle your site. If set, it will be output in the page head. Refer to [Google's docs](https://developers.google.com/search/docs/advanced/robots/robots_meta_tag#directives) for valid values. |
|
| `robots` | _Not set_ | String that indicates how robots should handle your site. If set, it will be output in the page head. Refer to [Google's docs](https://developers.google.com/search/docs/advanced/robots/robots_meta_tag#directives) for valid values. |
|
||||||
| `disableImageZoom` | `false` | Disables image zoom feature across all the images in the site. |
|
| `disableImageZoom` | `false` | Disables image zoom feature across all the images in the site. |
|
||||||
|
| `defaultBackgroundImage` | _Not set_ | Default background image for both `background` homepage layout and `background` hero style |
|
||||||
| `header.layout` | `"basic"` | Defines the header for the entire site, supported values are `basic` and `fixed`. |
|
| `header.layout` | `"basic"` | Defines the header for the entire site, supported values are `basic` and `fixed`. |
|
||||||
| `footer.showMenu` | `true` | Show/hide the footer menu, which can be configured in the `[[footer]]` section of the `config/_default/menus.en.toml` file. |
|
| `footer.showMenu` | `true` | Show/hide the footer menu, which can be configured in the `[[footer]]` section of the `config/_default/menus.en.toml` file. |
|
||||||
| `footer.showCopyright` | `true` | Whether or not to show the copyright string in the site footer. Note that the string itself can be customised using the `copyright` parameter in the [languages configuration](#language-and-i18n). |
|
| `footer.showCopyright` | `true` | Whether or not to show the copyright string in the site footer. Note that the string itself can be customised using the `copyright` parameter in the [languages configuration](#language-and-i18n). |
|
||||||
@@ -189,15 +190,20 @@ Many of the article defaults here can be overridden on a per article basis by sp
|
|||||||
| `list.cardViewScreenWidth` | `false` | Enhance the width of card galleries in lists to take the full width available. |
|
| `list.cardViewScreenWidth` | `false` | Enhance the width of card galleries in lists to take the full width available. |
|
||||||
| `sitemap.excludedKinds` | `["taxonomy", "term"]` | Kinds of content that should be excluded from the generated `/sitemap.xml` file. Refer to the [Hugo docs](https://gohugo.io/templates/section-templates/#page-kinds) for acceptable values. |
|
| `sitemap.excludedKinds` | `["taxonomy", "term"]` | Kinds of content that should be excluded from the generated `/sitemap.xml` file. Refer to the [Hugo docs](https://gohugo.io/templates/section-templates/#page-kinds) for acceptable values. |
|
||||||
| `taxonomy.showTermCount` | `true` | Whether or not the number of articles within a taxonomy term is displayed on the taxonomy listing. |
|
| `taxonomy.showTermCount` | `true` | Whether or not the number of articles within a taxonomy term is displayed on the taxonomy listing. |
|
||||||
| `firebase.apiKey` | _Not set_ | Firebase apiKey, required to integrate against Firebase. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish |
|
| `firebase.apiKey` | _Not set_ | Firebase apiKey, required to integrate against Firebase. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish. |
|
||||||
| `firebase.authDomain` | _Not set_ | Firebase authDomain, required to integrate against Firebase. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish |
|
| `firebase.authDomain` | _Not set_ | Firebase authDomain, required to integrate against Firebase. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish. |
|
||||||
| `firebase.projectId` | _Not set_ | Firebase projectId, required to integrate against Firebase. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish |
|
| `firebase.projectId` | _Not set_ | Firebase projectId, required to integrate against Firebase. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish. |
|
||||||
| `firebase.storageBucket` | _Not set_ | Firebase storageBucket, required to integrate against Firebase. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish |
|
| `firebase.storageBucket` | _Not set_ | Firebase storageBucket, required to integrate against Firebase. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish. |
|
||||||
| `firebase.messagingSenderId` | _Not set_ | Firebase messagingSenderId, required to integrate against Firebase. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish |
|
| `firebase.messagingSenderId` | _Not set_ | Firebase messagingSenderId, required to integrate against Firebase. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish. |
|
||||||
| `firebase.appId` | _Not set_ | Firebase appId, required to integrate against Firebase. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish |
|
| `firebase.appId` | _Not set_ | Firebase appId, required to integrate against Firebase. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish. |
|
||||||
| `firebase.measurementId` | _Not set_ | Firebase measurementId, required to integrate against Firebase. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish |
|
| `firebase.measurementId` | _Not set_ | Firebase measurementId, required to integrate against Firebase. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish. |
|
||||||
| `fathomAnalytics.site` | _Not set_ | The site code generated by Fathom Analytics for the website. Refer to the [Analytics docs]({{< ref "partials#analytics" >}}) for more details. |
|
| `fathomAnalytics.site` | _Not set_ | The site code generated by Fathom Analytics for the website. Refer to the [Analytics docs]({{< ref "partials#analytics" >}}) for more details. |
|
||||||
| `fathomAnalytics.domain` | _Not set_ | If using a custom domain with Fathom Analytics, provide it here to serve `script.js` from the custom domain. |
|
| `fathomAnalytics.domain` | _Not set_ | If using a custom domain with Fathom Analytics, provide it here to serve `script.js` from the custom domain. |
|
||||||
|
| `buymeacoffee.identifier` | _Not set_ | The identifier to the target buymeacoffee account. |
|
||||||
|
| `buymeacoffee.globalWidget` | _Not set_ | Activate the global buymeacoffee widget. |
|
||||||
|
| `buymeacoffee.globalWidgetMessage` | _Not set_ | Message what will be displayed the first time a new user lands on the site. |
|
||||||
|
| `buymeacoffee.globalWidgetColor` | _Not set_ | Widget color in hex format. |
|
||||||
|
| `buymeacoffee.globalWidgetPosition` | _Not set_ | Position of the widget, i.e. "Left" or "Right" |
|
||||||
| `verification.google` | _Not set_ | The site verification string provided by Google to be included in the site metadata. |
|
| `verification.google` | _Not set_ | The site verification string provided by Google to be included in the site metadata. |
|
||||||
| `verification.bing` | _Not set_ | The site verification string provided by Bing to be included in the site metadata. |
|
| `verification.bing` | _Not set_ | The site verification string provided by Bing to be included in the site metadata. |
|
||||||
| `verification.pinterest` | _Not set_ | The site verification string provided by Pinterest to be included in the site metadata. |
|
| `verification.pinterest` | _Not set_ | The site verification string provided by Pinterest to be included in the site metadata. |
|
||||||
|
|||||||
BIN
Binary file not shown.
|
After Width: | Height: | Size: 126 KiB |
BIN
Binary file not shown.
|
After Width: | Height: | Size: 14 KiB |
BIN
Binary file not shown.
|
After Width: | Height: | Size: 373 KiB |
@@ -12,6 +12,12 @@ article:
|
|||||||
word_count:
|
word_count:
|
||||||
one: "{{ .Count }} টি শব্দ"
|
one: "{{ .Count }} টি শব্দ"
|
||||||
other: "{{ .Count }} টি শব্দ"
|
other: "{{ .Count }} টি শব্দ"
|
||||||
|
views:
|
||||||
|
one: "{{ .Count }} বার দেখা হয়েছে"
|
||||||
|
other: "{{ .Count }} বার দেখা হয়েছে"
|
||||||
|
likes:
|
||||||
|
one: "{{ .Count }} বার পছন্দ করা হয়েছে"
|
||||||
|
other: "{{ .Count }} বার পছন্দ করা হয়েছে"
|
||||||
|
|
||||||
author:
|
author:
|
||||||
byline_title: "লেখক"
|
byline_title: "লেখক"
|
||||||
@@ -53,3 +59,6 @@ sharing:
|
|||||||
|
|
||||||
shortcode:
|
shortcode:
|
||||||
recent_articles: "সাম্প্রতিক"
|
recent_articles: "সাম্প্রতিক"
|
||||||
|
|
||||||
|
recent:
|
||||||
|
show_more: "আরো দেখুন"
|
||||||
|
|||||||
@@ -0,0 +1,64 @@
|
|||||||
|
article:
|
||||||
|
anchor_label: "Якорь"
|
||||||
|
date: "{{ .Date }}"
|
||||||
|
date_updated: "Обновлено: {{ .Date }}"
|
||||||
|
draft: "Черновик"
|
||||||
|
edit_title: "Редактировать содержимое"
|
||||||
|
reading_time:
|
||||||
|
one: "{{ .Count }} минута"
|
||||||
|
other: "{{ .Count }} минут"
|
||||||
|
reading_time_title: "Время чтения"
|
||||||
|
table_of_contents: "Оглавление"
|
||||||
|
word_count:
|
||||||
|
one: "{{ .Count }} слово"
|
||||||
|
other: "{{ .Count }} слов"
|
||||||
|
views:
|
||||||
|
one: "{{ .Count }} просмотр"
|
||||||
|
other: "{{ .Count }} просмотров"
|
||||||
|
likes:
|
||||||
|
one: "{{ .Count }} нравится"
|
||||||
|
other: "{{ .Count }} нравится"
|
||||||
|
|
||||||
|
author:
|
||||||
|
byline_title: "Автор"
|
||||||
|
|
||||||
|
code:
|
||||||
|
copy: "Копировать"
|
||||||
|
copied: "Скопировано"
|
||||||
|
|
||||||
|
error:
|
||||||
|
404_title: "Страница не найдена: в замешательстве:"
|
||||||
|
404_error: "Ошибка 404"
|
||||||
|
404_description: "Похоже, запрошенная вами страница не существует."
|
||||||
|
|
||||||
|
footer:
|
||||||
|
dark_appearance: "Переключить на темный вид"
|
||||||
|
light_appearance: "Переключить на светлый вид"
|
||||||
|
powered_by: "Работает на {{ .Hugo }} & {{ .Theme }}"
|
||||||
|
|
||||||
|
list:
|
||||||
|
externalurl_title: "Ссылка на внешний сайт"
|
||||||
|
no_articles: "Здесь пока нет статей."
|
||||||
|
|
||||||
|
nav:
|
||||||
|
scroll_to_top_title: "Пролистать наверх"
|
||||||
|
skip_to_main: "Перейти к основному содержимому"
|
||||||
|
|
||||||
|
search:
|
||||||
|
open_button_title: "Поиск (/)"
|
||||||
|
close_button_title: "Закрыть (Esc)"
|
||||||
|
input_placeholder: "Поиск"
|
||||||
|
|
||||||
|
sharing:
|
||||||
|
email: "Отправить по электронной почте"
|
||||||
|
facebook: "Поделиться через Facebook"
|
||||||
|
linkedin: "Поделиться через LinkedIn"
|
||||||
|
pinterest: "PДобавить в Pinterest"
|
||||||
|
reddit: "Отправить в Reddit"
|
||||||
|
twitter: "Твитнуть в Twitter"
|
||||||
|
|
||||||
|
shortcode:
|
||||||
|
recent_articles: "Недавние"
|
||||||
|
|
||||||
|
recent:
|
||||||
|
show_more: "Показать еще"
|
||||||
@@ -1,30 +1,20 @@
|
|||||||
{{- partial "partials/functions/warnings.html" .Site -}}
|
{{- partial "partials/functions/warnings.html" .Site -}}
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html
|
<html lang="{{ with .Site.Params.isoCode | default (.Site.LanguageCode | default " en") }} {{- . -}} {{ end }}" dir="{{ if .Site.Params.rtl | default false -}}
|
||||||
lang="{{ with .Site.Params.isoCode | default (.Site.LanguageCode | default "en") }}
|
|
||||||
{{- . -}}
|
|
||||||
{{ end }}"
|
|
||||||
dir="{{ if .Site.Params.rtl | default false -}}
|
|
||||||
rtl
|
rtl
|
||||||
{{- else -}}
|
{{- else -}}
|
||||||
ltr
|
ltr
|
||||||
{{- end }}"
|
{{- end }}" class="scroll-smooth" data-default-appearance="{{ .Site.Params.defaultAppearance | default " light" }}"
|
||||||
class="scroll-smooth"
|
data-auto-appearance="{{ .Site.Params.autoSwitchAppearance | default " true" }}">
|
||||||
data-default-appearance="{{ .Site.Params.defaultAppearance | default "light" }}"
|
{{- partial "head.html" . -}}
|
||||||
data-auto-appearance="{{ .Site.Params.autoSwitchAppearance | default "true" }}"
|
|
||||||
>
|
<body
|
||||||
{{- partial "head.html" . -}}
|
class="flex flex-col h-screen px-6 m-auto text-lg leading-7 max-w-7xl bg-neutral text-neutral-900 dark:bg-neutral-800 dark:text-neutral sm:px-14 md:px-24 lg:px-32">
|
||||||
<body
|
|
||||||
class="flex flex-col h-screen px-6 m-auto text-lg leading-7 max-w-7xl bg-neutral text-neutral-900 dark:bg-neutral-800 dark:text-neutral sm:px-14 md:px-24 lg:px-32"
|
|
||||||
>
|
|
||||||
<div id="the-top" class="absolute flex self-center">
|
<div id="the-top" class="absolute flex self-center">
|
||||||
<a
|
<a class="px-3 py-1 text-sm -translate-y-8 rounded-b-lg bg-primary-200 focus:translate-y-0 dark:bg-neutral-600"
|
||||||
class="px-3 py-1 text-sm -translate-y-8 rounded-b-lg bg-primary-200 focus:translate-y-0 dark:bg-neutral-600"
|
href="#main-content"><span
|
||||||
href="#main-content"
|
class="font-bold text-primary-600 ltr:pr-2 rtl:pl-2 dark:text-primary-400">↓</span>{{ i18n
|
||||||
><span class="font-bold text-primary-600 ltr:pr-2 rtl:pl-2 dark:text-primary-400"
|
"nav.skip_to_main" }}</a>
|
||||||
>↓</span
|
|
||||||
>{{ i18n "nav.skip_to_main" }}</a
|
|
||||||
>
|
|
||||||
</div>
|
</div>
|
||||||
{{ $header := print "partials/header/" .Site.Params.header.layout ".html" }}
|
{{ $header := print "partials/header/" .Site.Params.header.layout ".html" }}
|
||||||
{{ if templates.Exists $header }}
|
{{ if templates.Exists $header }}
|
||||||
@@ -36,15 +26,10 @@
|
|||||||
<main id="main-content" class="grow">
|
<main id="main-content" class="grow">
|
||||||
{{ block "main" . }}{{ end }}
|
{{ block "main" . }}{{ end }}
|
||||||
{{ if and (.Site.Params.footer.showScrollToTop | default true) (gt .WordCount 200) }}
|
{{ if and (.Site.Params.footer.showScrollToTop | default true) (gt .WordCount 200) }}
|
||||||
<div
|
<div class="pointer-events-none absolute top-[100vh] bottom-0 w-12 ltr:right-0 rtl:left-0">
|
||||||
class="pointer-events-none absolute top-[100vh] bottom-0 w-12 ltr:right-0 rtl:left-0"
|
<a href="#the-top"
|
||||||
>
|
|
||||||
<a
|
|
||||||
href="#the-top"
|
|
||||||
class="pointer-events-auto sticky top-[calc(100vh-5.5rem)] flex h-12 w-12 items-center justify-center rounded-full bg-neutral/50 text-xl text-neutral-700 backdrop-blur hover:text-primary-600 dark:bg-neutral-800/50 dark:text-neutral dark:hover:text-primary-400"
|
class="pointer-events-auto sticky top-[calc(100vh-5.5rem)] flex h-12 w-12 items-center justify-center rounded-full bg-neutral/50 text-xl text-neutral-700 backdrop-blur hover:text-primary-600 dark:bg-neutral-800/50 dark:text-neutral dark:hover:text-primary-400"
|
||||||
aria-label="{{ i18n "nav.scroll_to_top_title" }}"
|
aria-label="{{ i18n " nav.scroll_to_top_title" }}" title="{{ i18n " nav.scroll_to_top_title" }}">
|
||||||
title="{{ i18n "nav.scroll_to_top_title" }}"
|
|
||||||
>
|
|
||||||
↑
|
↑
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
@@ -55,5 +40,10 @@
|
|||||||
{{- partial "search.html" . -}}
|
{{- partial "search.html" . -}}
|
||||||
{{ end }}
|
{{ end }}
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
{{ if .Site.Params.buymeacoffee.globalWidget | default false }}
|
||||||
|
<script data-name="BMC-Widget" data-cfasync="false" src="https://cdnjs.buymeacoffee.com/1.0.0/widget.prod.min.js"
|
||||||
|
data-id="{{ .Site.Params.buymeacoffee.identifier }}" data-description="Support me on Buy me a coffee!" data-message="{{ .Site.Params.buymeacoffee.globalWidgetMessage | default "" }}"
|
||||||
|
data-color="{{ .Site.Params.buymeacoffee.globalWidgetColor | default "#FFDD00" }}" data-position="{{ .Site.Params.buymeacoffee.globalWidgetPosition | default "Left" }}" data-x_margin="18" data-y_margin="18"></script>
|
||||||
|
{{ end }}
|
||||||
</html>
|
</html>
|
||||||
@@ -152,7 +152,7 @@
|
|||||||
</section>
|
</section>
|
||||||
{{ if gt .Pages 0 }}
|
{{ if gt .Pages 0 }}
|
||||||
|
|
||||||
{{ if .Site.Params.list.cardView | default false }}
|
{{ if .Params.cardView | default (.Site.Params.list.cardView | default false) }}
|
||||||
|
|
||||||
{{ $cardViewScreenWidth := .Site.Params.list.cardViewScreenWidth}}
|
{{ $cardViewScreenWidth := .Site.Params.list.cardViewScreenWidth}}
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
{{- $images := .Resources.ByType "image" -}}
|
{{- $images := .Resources.ByType "image" -}}
|
||||||
{{- $featured := $images.GetMatch "*feature*" -}}
|
{{- $featured := $images.GetMatch "*feature*" -}}
|
||||||
{{- if not $featured }}{{ $featured = $images.GetMatch "{*cover*,*thumbnail*}" }}{{ end -}}
|
{{- if not $featured }}{{ $featured = $images.GetMatch "{*cover*,*thumbnail*}" }}{{ end -}}
|
||||||
|
{{- if not $featured }}{{ with .Site.Params.defaultBackgroundImage }}{{ $featured = resources.Get . }}{{ end }}{{ end -}}
|
||||||
{{- with $featured -}}
|
{{- with $featured -}}
|
||||||
{{ with .Resize "1200x" }}
|
{{ with .Resize "1200x" }}
|
||||||
<div id="hero" class="h-[150px] md:h-[200px]"></div>
|
<div id="hero" class="h-[150px] md:h-[200px]"></div>
|
||||||
|
|||||||
@@ -4,9 +4,10 @@
|
|||||||
<div class="mx-auto max-w-7xl p-0">
|
<div class="mx-auto max-w-7xl p-0">
|
||||||
<div class="relative sm:overflow-hidden">
|
<div class="relative sm:overflow-hidden">
|
||||||
<div class="fixed inset-x-0 top-0" style="z-index:-10">
|
<div class="fixed inset-x-0 top-0" style="z-index:-10">
|
||||||
{{ with .Site.Params.homepage.homepageImage }}
|
{{ $homepageImage := "" }}
|
||||||
{{ $homepageImage := resources.Get . }}
|
{{ with .Site.Params.defaultBackgroundImage }}{{ $homepageImage = resources.Get . }}{{ end }}
|
||||||
{{ if $homepageImage }}
|
{{ with .Site.Params.homepage.homepageImage }}{{ $homepageImage = resources.Get . }}{{ end }}
|
||||||
|
{{ if not (eq $homepageImage "") }}
|
||||||
<img class="w-full h-[1000px] object-cover m-0 nozoom" src="{{ $homepageImage.RelPermalink }}">
|
<img class="w-full h-[1000px] object-cover m-0 nozoom" src="{{ $homepageImage.RelPermalink }}">
|
||||||
<div
|
<div
|
||||||
class="absolute inset-0 h-[1000px] bg-gradient-to-t from-neutral dark:from-neutral-800 to-transparent mix-blend-normal">
|
class="absolute inset-0 h-[1000px] bg-gradient-to-t from-neutral dark:from-neutral-800 to-transparent mix-blend-normal">
|
||||||
@@ -15,7 +16,6 @@
|
|||||||
class="opacity-70 absolute inset-0 h-[1000px] bg-gradient-to-t from-neutral dark:from-neutral-800 to-neutral dark:to-neutral-800 mix-blend-normal">
|
class="opacity-70 absolute inset-0 h-[1000px] bg-gradient-to-t from-neutral dark:from-neutral-800 to-neutral dark:to-neutral-800 mix-blend-normal">
|
||||||
</div>
|
</div>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
{{ end }}
|
|
||||||
</div>
|
</div>
|
||||||
<div class="relative px-4 py-16 sm:px-6 sm:py-24 lg:py-32 lg:px-8 flex flex-col items-center justify-center text-center">
|
<div class="relative px-4 py-16 sm:px-6 sm:py-24 lg:py-32 lg:px-8 flex flex-col items-center justify-center text-center">
|
||||||
{{ with .Site.Author.image }}
|
{{ with .Site.Author.image }}
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
{{ with .Params.sharingLinks | default (.Site.Params.article.sharingLinks | default false) }}
|
{{ with .Params.sharingLinks | default (.Site.Params.article.sharingLinks | default false) }}
|
||||||
{{ $links := site.Data.sharing }}
|
|
||||||
<section class="flex flex-row flex-wrap justify-center pt-4 text-xl">
|
<section class="flex flex-row flex-wrap justify-center pt-4 text-xl">
|
||||||
{{ range . }}
|
{{ range $.Site.Data.sharing.links }}
|
||||||
{{ with index $links . }}
|
{{ with . }}
|
||||||
<a
|
<a
|
||||||
|
target="_blank"
|
||||||
class="m-1 inline-block min-w-[2.4rem] rounded bg-neutral-300 p-1 text-center text-neutral-700 hover:bg-primary-500 hover:text-neutral dark:bg-neutral-700 dark:text-neutral-300 dark:hover:bg-primary-400 dark:hover:text-neutral-800"
|
class="m-1 inline-block min-w-[2.4rem] rounded bg-neutral-300 p-1 text-center text-neutral-700 hover:bg-primary-500 hover:text-neutral dark:bg-neutral-700 dark:text-neutral-300 dark:hover:bg-primary-400 dark:hover:text-neutral-800"
|
||||||
href="{{ printf .url $.Permalink $.Title }}"
|
href="{{ printf .url $.Permalink $.Title }}"
|
||||||
title="{{ i18n .title }}"
|
title="{{ i18n .title }}"
|
||||||
|
|||||||
Generated
+9
-9
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "hugo-blowfish-theme",
|
"name": "hugo-blowfish-theme",
|
||||||
"version": "2.9.1",
|
"version": "2.12.1",
|
||||||
"lockfileVersion": 2,
|
"lockfileVersion": 2,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "hugo-blowfish-theme",
|
"name": "hugo-blowfish-theme",
|
||||||
"version": "2.9.1",
|
"version": "2.12.1",
|
||||||
"hasInstallScript": true,
|
"hasInstallScript": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
@@ -25,7 +25,7 @@
|
|||||||
"prettier-plugin-go-template": "^0.0.13",
|
"prettier-plugin-go-template": "^0.0.13",
|
||||||
"prettier-plugin-tailwindcss": "^0.1.13",
|
"prettier-plugin-tailwindcss": "^0.1.13",
|
||||||
"rimraf": "^3.0.2",
|
"rimraf": "^3.0.2",
|
||||||
"tailwindcss": "^3.2.3",
|
"tailwindcss": "^3.2.4",
|
||||||
"vendor-copy": "^3.0.1"
|
"vendor-copy": "^3.0.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -1900,9 +1900,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/tailwindcss": {
|
"node_modules/tailwindcss": {
|
||||||
"version": "3.2.3",
|
"version": "3.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.3.tgz",
|
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.4.tgz",
|
||||||
"integrity": "sha512-Xt9D4PK4zuuQCEB8bwK9JUCKmTgUwyac/6b0/42Vqhgl6YJkep+Wf5wq+5uXYfmrupdAD0YY2NY1hyZp1HjRrg==",
|
"integrity": "sha512-AhwtHCKMtR71JgeYDaswmZXhPcW9iuI9Sp2LvZPo9upDZ7231ZJ7eA9RaURbhpXGVlrjX4cFNlB4ieTetEb7hQ==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"arg": "^5.0.2",
|
"arg": "^5.0.2",
|
||||||
"chokidar": "^3.5.3",
|
"chokidar": "^3.5.3",
|
||||||
@@ -3439,9 +3439,9 @@
|
|||||||
"integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w=="
|
"integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w=="
|
||||||
},
|
},
|
||||||
"tailwindcss": {
|
"tailwindcss": {
|
||||||
"version": "3.2.3",
|
"version": "3.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.3.tgz",
|
"resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.4.tgz",
|
||||||
"integrity": "sha512-Xt9D4PK4zuuQCEB8bwK9JUCKmTgUwyac/6b0/42Vqhgl6YJkep+Wf5wq+5uXYfmrupdAD0YY2NY1hyZp1HjRrg==",
|
"integrity": "sha512-AhwtHCKMtR71JgeYDaswmZXhPcW9iuI9Sp2LvZPo9upDZ7231ZJ7eA9RaURbhpXGVlrjX4cFNlB4ieTetEb7hQ==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"arg": "^5.0.2",
|
"arg": "^5.0.2",
|
||||||
"chokidar": "^3.5.3",
|
"chokidar": "^3.5.3",
|
||||||
|
|||||||
+3
-2
@@ -1,8 +1,9 @@
|
|||||||
{
|
{
|
||||||
"name": "hugo-blowfish-theme",
|
"name": "hugo-blowfish-theme",
|
||||||
"version": "2.10.0",
|
"version": "2.13.0",
|
||||||
"description": "Blowfish theme for Hugo",
|
"description": "Blowfish theme for Hugo",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
"fullinstall": "npm run preinstall && npm install && npm run postinstall",
|
||||||
"preinstall": "rimraf assets/vendor",
|
"preinstall": "rimraf assets/vendor",
|
||||||
"postinstall": "vendor-copy",
|
"postinstall": "vendor-copy",
|
||||||
"assets": "rimraf assets/vendor && vendor-copy",
|
"assets": "rimraf assets/vendor && vendor-copy",
|
||||||
@@ -42,7 +43,7 @@
|
|||||||
"prettier-plugin-go-template": "^0.0.13",
|
"prettier-plugin-go-template": "^0.0.13",
|
||||||
"prettier-plugin-tailwindcss": "^0.1.13",
|
"prettier-plugin-tailwindcss": "^0.1.13",
|
||||||
"rimraf": "^3.0.2",
|
"rimraf": "^3.0.2",
|
||||||
"tailwindcss": "^3.2.3",
|
"tailwindcss": "^3.2.4",
|
||||||
"vendor-copy": "^3.0.1"
|
"vendor-copy": "^3.0.1"
|
||||||
},
|
},
|
||||||
"vendorCopy": [],
|
"vendorCopy": [],
|
||||||
|
|||||||
Reference in New Issue
Block a user