Compare commits

...
322 Commits
Author SHA1 Message Date
Nuno Coração 5492b63ad0 Merge branch 'dev' into main 2022-12-30 15:28:33 +00:00
Nuno Coração 2af0079c92 update site references 2022-12-30 15:25:34 +00:00
Nuno Coração 4745548ea1 fixed background in Homepage Layout 2022-12-30 15:19:15 +00:00
Nuno Coração 2a99f322f2 adding firebase.json 2022-12-30 15:13:50 +00:00
Nuno Coração 748ed2e9e0 adding firebaserc file 2022-12-30 15:11:38 +00:00
Nuno Coração b608e5fc3c updating github actions 2022-12-30 15:08:29 +00:00
Nuno Coração c3092131a6 test github actions 2022-12-30 15:04:42 +00:00
Nuno Coração 0d79f15114 updating github action for preview 2022-12-30 15:04:18 +00:00
Nuno Coração 886ac1e01f test github actions 2022-12-30 15:03:10 +00:00
Nuno Coração 6ce016f6e2 test github actions 2022-12-30 15:00:45 +00:00
Nuno Coração 3aeb37fd39 updating github action for preview 2022-12-30 14:57:13 +00:00
Nuno Coração fdd81049ee updating package version 2022-12-30 14:54:56 +00:00
Nuno Coração ba37a853c8 adding firebase preview action 2022-12-30 14:52:59 +00:00
Nuno Coração 9f84893beb Merge pull request #343 from lemonase/patch-2
Update docs in regards to image optimization
2022-12-29 19:36:48 +00:00
James Dixon 0f6c312ac4 Move docs about image optimizations 2022-12-29 17:30:21 +00:00
James Dixon b7d3363850 Update docs
Updated docs in reference to #336
2022-12-29 12:00:08 -05:00
Nuno Coração 5e538c10fb Merge pull request #341 from pfrogond/main
Czech translation
2022-12-28 19:50:23 +00:00
Ondřej Pfrogner 825f335d9a Update index.md 2022-12-28 20:32:54 +01:00
Nuno Coração b228802ddd Merge pull request #340 from mztiq/main
Add rss SVG icons
2022-12-28 19:07:24 +00:00
Ondřej Pfrogner 6f27cbc208 Add files via upload 2022-12-25 18:48:32 +01:00
Ondřej Pfrogner 314b7681e2 Delete cs.yaml 2022-12-25 18:48:13 +01:00
Ondřej Pfrogner 66c2282fed Add files via upload 2022-12-25 18:40:07 +01:00
Nuno Coração 83d6090e16 fix to dev script 2022-12-22 13:18:07 +00:00
Nuno Coração 7302083428 small fixes for main release 2022-12-21 23:46:19 +00:00
mztiq 17166c7bb0 Add svg icons rss and rss-square 2022-12-21 22:17:07 +01:00
mztiq 0dc2530b99 Rename rss_square.svg to rss-square.svg 2022-12-21 22:16:22 +01:00
Nuno Coração 23474cbdb9 Merge pull request #330 from nunocoracao/dev
🔖 Release v2.19.0
2022-12-21 21:15:05 +00:00
Nuno Coração e8cc7d8fc6 final small fixes 2022-12-21 21:13:28 +00:00
mztiq f181f77808 Add rss svg icons. 2022-12-21 22:07:22 +01:00
Nuno Coração 3e7df21899 Merge pull request #339 from nunocoracao/336-bug-image-zoom-level-too-low
🐛 Image zoom level too low
2022-12-21 20:49:36 +00:00
Nuno Coração 0516d2fb96 🐛 Image zoom level too low 2022-12-21 20:48:57 +00:00
Nuno Coração 19a93e421b Merge pull request #338 from nunocoracao/324-term-view-is-missing-a-margin-before-content-list
🐛 Term view is missing a margin before content list
2022-12-21 19:50:27 +00:00
Nuno Coração 6787cded15 🐛 Term view is missing a margin before content list 2022-12-21 19:49:19 +00:00
Nuno Coração 68f9da6c27 Merge pull request #329 from chrisbanes/cb/grid-recent-articles
💄 Use grid rather than flexbox for recent articles
2022-12-21 19:39:47 +00:00
Nuno Coração 047fbd77da Merge pull request #331 from nunocoracao/dependabot/npm_and_yarn/dev/headlessui/react-1.7.7
📌 Bump @headlessui/react from 1.7.5 to 1.7.7
2022-12-21 19:39:20 +00:00
Nuno Coração d8e8436b9f Merge pull request #332 from nunocoracao/dependabot/npm_and_yarn/dev/chart.js-4.1.1
📌 Bump chart.js from 4.0.1 to 4.1.1
2022-12-21 19:39:07 +00:00
Nuno Coração e337e893f0 Merge pull request #333 from nunocoracao/dependabot/npm_and_yarn/dev/mermaid-9.3.0
📌 Bump mermaid from 9.2.2 to 9.3.0
2022-12-21 19:38:50 +00:00
dependabot[bot] bd51e869a3 💄 Rebuild CSS 2022-12-19 05:13:46 +00:00
dependabot[bot] 35dec7cc6a 📦 Update packaged Mermaid 2022-12-19 05:13:44 +00:00
dependabot[bot] 777165fc27 💄 Rebuild CSS 2022-12-19 05:13:34 +00:00
dependabot[bot] 6ad86040b4 💄 Rebuild CSS 2022-12-19 05:13:32 +00:00
dependabot[bot] 4827540f4f 📦 Update packaged ChartJS 2022-12-19 05:13:29 +00:00
dependabot[bot] 4c95182ae5 📌 Bump mermaid from 9.2.2 to 9.3.0
Bumps [mermaid](https://github.com/mermaid-js/mermaid) from 9.2.2 to 9.3.0.
- [Release notes](https://github.com/mermaid-js/mermaid/releases)
- [Changelog](https://github.com/mermaid-js/mermaid/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/mermaid-js/mermaid/compare/v9.2.2...v9.3.0)

---
updated-dependencies:
- dependency-name: mermaid
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-19 05:13:14 +00:00
dependabot[bot] 1d15a751ba 📌 Bump chart.js from 4.0.1 to 4.1.1
Bumps [chart.js](https://github.com/chartjs/Chart.js) from 4.0.1 to 4.1.1.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v4.0.1...v4.1.1)

---
updated-dependencies:
- dependency-name: chart.js
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-19 05:13:05 +00:00
dependabot[bot] fae30f81f8 📌 Bump @headlessui/react from 1.7.5 to 1.7.7
Bumps [@headlessui/react](https://github.com/tailwindlabs/headlessui/tree/HEAD/packages/@headlessui-react) from 1.7.5 to 1.7.7.
- [Release notes](https://github.com/tailwindlabs/headlessui/releases)
- [Changelog](https://github.com/tailwindlabs/headlessui/blob/main/packages/@headlessui-react/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/headlessui/commits/@headlessui/react@v1.7.7/packages/@headlessui-react)

---
updated-dependencies:
- dependency-name: "@headlessui/react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-19 05:12:59 +00:00
Nuno Coração 9059b558af Merge pull request #327 from chrisbanes/cb/fill-thumbs
Improve resizing for article thumbnails
2022-12-18 11:47:35 +00:00
Nuno Coração c21d69d2f0 Merge pull request #328 from sergiod26/series-i18n
Add i18n for article series
2022-12-18 11:45:49 +00:00
Chris Banes 8c939bf372 Use grid rather than flexbox for recent articles
Currently the items include some inner padding, which means
that the items have some leading spacing on the left/right
which don't align with the keyline.

This PR updates this to use a grid, with a fixed number of
columns depending on the screen size.
2022-12-17 15:58:50 +00:00
Sergio Diaz 1337a8fff4 🌐 add i18n for article series 2022-12-16 13:29:10 -06:00
Chris Banes 177b0fd567 Improve resizing for article thumbnails
Currently, the image is resized to be 600px, which will work for
most images but caused issues for images which have very wide
aspect ratios. This change updates the partials to use a Fill with
an appropriate bounding box, rather than a simple resize.
2022-12-15 18:26:31 +00:00
Nuno Coração 5f1efb9946 Merge pull request #326 from mztiq/main
✏️ Fixing small typo in theme.toml
2022-12-15 15:21:50 +00:00
mztiq 992b8d6530 Update theme.toml 2022-12-15 13:49:25 +01:00
Nuno Coração 5a9086d7d0 Merge pull request #325 from RotrixLOL/patch-1 2022-12-14 07:40:51 +00:00
RotrixX cd56af8667 feat: add my site 2022-12-13 23:10:38 +01:00
Nuno Coração 0f262e87d8 Merge pull request #306 from nunocoracao/dev
🚀 v2.18.0 release
2022-12-13 09:09:22 +00:00
Nuno Coração 76eb6699be Merge pull request #323 from nunocoracao/305-update-blowfish-main-website-to-leverage-these-features
🍱 Update blowfish main website to leverage new features
2022-12-13 09:07:07 +00:00
Nuno Coração 07bfb8ab71 🍱 Update blowfish main website to use new features 2022-12-13 09:06:37 +00:00
Nuno Coração a9ec7aa71f Merge pull request #322 from nunocoracao/304-update-documentation-for-the-new-use-cases
📝 Update documentation for the new use-cases
2022-12-13 09:04:18 +00:00
Nuno Coração fd3598209c 📝 Update documentation for the new use-cases 2022-12-13 09:03:37 +00:00
Nuno Coração adec3dae1a Merge pull request #321 from nunocoracao/311-term-add-card-view
✨Term add card view
2022-12-12 23:27:22 +00:00
Nuno Coração b2045506dc ✨Term add card view 2022-12-12 23:26:43 +00:00
Nuno Coração 5d5dcaa7f8 Merge pull request #320 from nunocoracao/309-term-add-hero-image
✨Term add hero image
2022-12-12 23:17:52 +00:00
Nuno Coração 88b8647fb7 ✨Term add hero image 2022-12-12 23:17:14 +00:00
Nuno Coração c40b75a601 Merge pull request #319 from nunocoracao/310-term-add-likes-and-views
✨Term add likes and views
2022-12-12 23:05:10 +00:00
Nuno Coração 8b132ffa0e ✨Term add likes and views 2022-12-12 23:04:27 +00:00
Nuno Coração f4b5413c05 Merge pull request #318 from nunocoracao/312-taxonomy-add-hero-image
✨Taxonomy add hero image
2022-12-12 22:59:17 +00:00
Nuno Coração 07055a2934 ✨Taxonomy add hero image 2022-12-12 22:58:42 +00:00
Nuno Coração 6fd8de1edc Merge pull request #317 from nunocoracao/316-recycle-refactor-articles-and-list-to-use-pagejs-logic-instead-of-inline-js
♻️ refactor articles and list to use page.js logic instead of inline js
2022-12-12 22:43:44 +00:00
Nuno Coração 8171739c7e ♻️ refactor articles and list to use page.js logic instead of inline js 2022-12-12 22:43:05 +00:00
Nuno Coração 9a56be903f Merge pull request #315 from nunocoracao/313-taxonomy-add-likes-and-views
✨Taxonomy add likes and views
2022-12-12 22:35:20 +00:00
Nuno Coração 3034722b47 ✨Taxonomy add likes and views 2022-12-12 22:34:28 +00:00
Nuno Coração e448f06d3f Merge pull request #308 from nunocoracao/301-add-default-values-to-the-above-new-sections-in-paramstoml
🔧 Add default values to the above new sections in params.toml
2022-12-12 22:11:54 +00:00
Nuno Coração 2e222bf5aa 🔧 Add default values to the above new sections in params.toml 2022-12-12 22:11:21 +00:00
Nuno Coração 1c5ff0957b Merge pull request #307 from nunocoracao/300-add-relevant-parameters-to-paramstoml-file-for-both-taxonomy-and-term
🎨 Add relevant parameters to params.toml file for both taxonomy and term
2022-12-12 22:07:49 +00:00
Nuno Coração 3da417f6c9 🎨 Add relevant parameters to params.toml file for both taxonomy and term 2022-12-12 22:07:14 +00:00
Nuno Coração b391a94c89 🔖 updated theme version 2022-12-12 21:58:14 +00:00
Nuno Coração d62cf93865 Merge pull request #299 from nunocoracao/dev
Release v2.17.1
2022-12-12 21:40:57 +00:00
Nuno Coração c2f5d25c4f updated theme version 2022-12-12 21:39:34 +00:00
Nuno Coração 2bc2c8c78c Merge pull request #298 from nunocoracao/297-prev-next-article-links-in-mobile-something-get-stuck-together
💄 add margin to article pagination links
2022-12-12 21:37:57 +00:00
Nuno Coração 738f8ee4cc added margin to article pagination links 2022-12-12 21:36:54 +00:00
Nuno Coração e275c96fd2 Merge pull request #296 from krishna-santosh/main
💄 add margin-bottom to 'the-top' element
2022-12-12 21:24:01 +00:00
Krishna Santosh 16bc8cf841 fix: moved Tags Authors to left in mobile view 2022-12-12 22:04:33 +05:30
Krishna Santosh 2f053a7279 fix: add margin-bottom to 'the-top' element 2022-12-11 18:52:41 +05:30
Krishna Santosh 38bcea0e0a fix: add margin-bottom to the-top element 2022-12-11 18:28:14 +05:30
Nuno Coração 6c0d09ae8c Merge pull request #290 from mztiq/patch-1
Update index.md
2022-12-11 11:14:09 +00:00
mztiq c246397a21 Update index.md 2022-12-10 02:21:04 +01:00
Nuno Coração 74be52e151 small fix in users page 2022-12-09 11:12:50 +00:00
Nuno Coração 895e96797d Merge pull request #284 from nunocoracao/dev
Release Wrap Up
2022-12-09 10:46:11 +00:00
Nuno Coração 0ff6f49da4 updated theme version 2022-12-09 10:44:50 +00:00
Nuno Coração 0ca99241c2 Merge pull request #288 from nunocoracao/dependabot/npm_and_yarn/dev/prettier-plugin-tailwindcss-0.2.1
📌 Bump prettier-plugin-tailwindcss from 0.2.0 to 0.2.1
2022-12-09 10:08:30 +00:00
Nuno Coração e59652f997 Merge pull request #289 from nunocoracao/dependabot/npm_and_yarn/dev/headlessui/react-1.7.5
📌 Bump @headlessui/react from 1.7.4 to 1.7.5
2022-12-09 10:08:14 +00:00
dependabot[bot] 0325b3d975 📌 Bump @headlessui/react from 1.7.4 to 1.7.5
Bumps [@headlessui/react](https://github.com/tailwindlabs/headlessui/tree/HEAD/packages/@headlessui-react) from 1.7.4 to 1.7.5.
- [Release notes](https://github.com/tailwindlabs/headlessui/releases)
- [Changelog](https://github.com/tailwindlabs/headlessui/blob/main/packages/@headlessui-react/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/headlessui/commits/@headlessui/react@v1.7.5/packages/@headlessui-react)

---
updated-dependencies:
- dependency-name: "@headlessui/react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-09 05:11:35 +00:00
dependabot[bot] 42f03c0fb1 📌 Bump prettier-plugin-tailwindcss from 0.2.0 to 0.2.1
Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.2.0 to 0.2.1.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.2.0...v0.2.1)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-09 05:11:18 +00:00
Nuno Coração 2498f3601f Merge pull request #286 from nunocoracao/dependabot/npm_and_yarn/dev/prettier-2.8.1
📌 Bump prettier from 2.8.0 to 2.8.1
2022-12-08 19:34:17 +00:00
Nuno Coração 32947e9ad7 Merge pull request #287 from nunocoracao/dependabot/npm_and_yarn/dev/katex-0.16.4
📌 Bump katex from 0.16.3 to 0.16.4
2022-12-08 19:33:57 +00:00
dependabot[bot] 973b723849 📦 Update packaged KaTeX 2022-12-08 05:11:09 +00:00
dependabot[bot] 54200be79e 📌 Bump katex from 0.16.3 to 0.16.4
Bumps [katex](https://github.com/KaTeX/KaTeX) from 0.16.3 to 0.16.4.
- [Release notes](https://github.com/KaTeX/KaTeX/releases)
- [Changelog](https://github.com/KaTeX/KaTeX/blob/main/CHANGELOG.md)
- [Commits](https://github.com/KaTeX/KaTeX/compare/v0.16.3...v0.16.4)

---
updated-dependencies:
- dependency-name: katex
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-08 05:10:42 +00:00
dependabot[bot] 3d651e28e7 📌 Bump prettier from 2.8.0 to 2.8.1
Bumps [prettier](https://github.com/prettier/prettier) from 2.8.0 to 2.8.1.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.8.0...2.8.1)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-08 05:10:28 +00:00
Nuno Coração 13a3106974 Merge pull request #283 from madoke/main
♻️ Code reuse adjustment in header
2022-12-05 09:52:56 +00:00
madoke 142bd004b0 Remove duplicate code 2022-12-04 09:51:29 +00:00
Nuno Coração a9cf2fc911 Merge pull request #281 from nunocoracao/dev
new version prep
2022-12-02 22:49:38 +00:00
Nuno Coração a41309ae00 Merge pull request #280 from nunocoracao/dependabot/npm_and_yarn/dev/prettier-plugin-tailwindcss-0.2.0
📌 Bump prettier-plugin-tailwindcss from 0.1.13 to 0.2.0
2022-12-02 22:47:07 +00:00
Nuno Coração 7feddd8d42 updated version 2022-12-02 22:42:54 +00:00
dependabot[bot] 023a3665ef 📌 Bump prettier-plugin-tailwindcss from 0.1.13 to 0.2.0
Bumps [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) from 0.1.13 to 0.2.0.
- [Release notes](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.1.13...v0.2.0)

---
updated-dependencies:
- dependency-name: prettier-plugin-tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-02 22:33:53 +00:00
Nuno Coração 4271c40f5a Merge pull request #279 from nunocoracao/245-split-background-from-hero
✨Background heros improvements
2022-12-02 22:33:23 +00:00
Nuno Coração 0eea85631c ✨Background heros improvements 2022-12-02 22:32:37 +00:00
Nuno Coração 551b5812d1 Merge pull request #273 from nunocoracao/dev
🔖 New Release v2.15.0
2022-11-24 21:34:14 +00:00
Nuno Coração 4204c0e40d final touches 2022-11-24 21:33:15 +00:00
Nuno Coração b81790c034 Merge pull request #275 from nunocoracao/268-different-pagination-style
✨ Different pagination style by @martinvisser
2022-11-24 21:25:11 +00:00
Nuno Coração ee838f0590 fixed bug 2022-11-24 21:24:43 +00:00
Nuno Coração cae852186c ✨ Different pagination style by @martinvisser 2022-11-24 21:21:36 +00:00
Nuno Coração e10fd01788 Merge pull request #274 from nunocoracao/272-alien-update-hugo-version-support
👽 update hugo version support
2022-11-24 21:10:52 +00:00
Nuno Coração 9d83e45d1c 👽 Update Hugo version support 2022-11-24 21:08:33 +00:00
Nuno Coração dae0a02883 Merge pull request #267 from Scoty/issue_266
✨ 266: Added option to disable the space between the header and the body
2022-11-24 21:04:15 +00:00
Nuno Coração 83e8bbe902 Merge pull request #269 from lemonase/patch-1
Add blog to users/_index.md
2022-11-24 21:02:18 +00:00
Nuno Coração 687067fec0 Merge pull request #270 from nunocoracao/dependabot/npm_and_yarn/dev/prettier-2.8.0
📌 Bump prettier from 2.7.1 to 2.8.0
2022-11-24 21:01:33 +00:00
dependabot[bot] 333b79ddd1 📌 Bump prettier from 2.7.1 to 2.8.0
Bumps [prettier](https://github.com/prettier/prettier) from 2.7.1 to 2.8.0.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prettier/prettier/compare/2.7.1...2.8.0)

---
updated-dependencies:
- dependency-name: prettier
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-23 05:09:39 +00:00
James Dixon 71ed8c9b4f Add blog to _index.md 2022-11-22 16:39:49 -05:00
Anton Antonov 9360ff1207 266: Added option to disable the space between the header and the footer when using heroStyle: background 2022-11-22 12:57:25 +02:00
Anton Antonov d024ad961b 266: Added option to disable the space between the header and the footer when using heroStyle: background 2022-11-22 12:55:24 +02:00
Anton Antonov f4b919681e ✨ 266: Added option to disable the space between the header and the body when using heroStyle: background 2022-11-21 10:56:11 +02:00
Nuno Coração a79219a6aa added mastodon link 2022-11-20 00:45:48 +00:00
Nuno Coração 21b332dcd8 Update README.md 2022-11-20 00:19:55 +00:00
Nuno Coração 63af7e03d0 added mastodon 2022-11-20 00:17:56 +00:00
Nuno Coração ead5a1a056 Update README.md 2022-11-19 23:37:30 +00:00
Nuno Coração 9987868ee5 Merge pull request #265 from nunocoracao/264-icons-align-to-the-left-in-responsive-mobile-menu
🐛 Icons align to the left in responsive mobile menu
2022-11-19 23:34:31 +00:00
Nuno Coração 064ef5eb9a updated version 2022-11-19 23:34:08 +00:00
Nuno Coração 2e097b8ec5 🐛 Icons align to the left in responsive mobile menu 2022-11-19 23:33:24 +00:00
Nuno Coração 165ee8c230 Merge pull request #256 from nunocoracao/dev
🔖 Release new version v2.14.0
2022-11-18 23:10:24 +00:00
Nuno Coração ae18817eb0 final 2022-11-18 23:07:59 +00:00
Nuno Coração aa4f5aa80b Merge pull request #263 from nunocoracao/260-fixed-bug-create-by-httpsgithubcomnunocoracaoblowfishpull249
🐛 Fixed bug create by https://github.com/nunocoracao/blowfish/pull/249
2022-11-18 22:59:40 +00:00
Nuno Coração 981204d58e fixed bug 2022-11-18 22:58:59 +00:00
Nuno Coração 51adb817fa Merge pull request #262 from nunocoracao/252-show-more-is-not-being-pulled-from-i18n-dictionaries
🐛 Show more is not being pulled from i18n dictionaries
2022-11-18 22:31:45 +00:00
Nuno Coração fc81fa2130 updated reference to dict 2022-11-18 22:30:21 +00:00
Nuno Coração 460c0b76e3 Merge pull request #261 from nunocoracao/259-add-new-workflows
🚧 Add new workflows
2022-11-18 22:28:02 +00:00
Nuno Coração 051c303e6c added build and test actions 2022-11-18 22:25:59 +00:00
Nuno Coração 0caa9b899e Merge pull request #258 from nunocoracao/255-arrow_up-support-for-new-hugo-version-01060
⬆️ Support for new Hugo version 0.106.0
2022-11-18 22:17:58 +00:00
Nuno Coração c6fe30b029 updated hugo version 2022-11-18 22:17:07 +00:00
Nuno Coração 2cb7d96bc7 updated version 2022-11-18 22:03:49 +00:00
Nuno Coração dacb87679a Merge pull request #253 from Moonlington/patch-1
👥 ADD: User to user list
2022-11-18 11:06:29 +00:00
Moonlington 1409d376f6 ADD: User to user list
I wanted to add my personal site to the list as well.
2022-11-17 22:31:30 +01:00
Nuno Coração dcf72e72bf Merge pull request #249 from chrisbanes/cb/sharing-links-ui
Improve visuals of sharing links
2022-11-17 12:46:29 +00:00
Chris Banes ff0f9d122f Use p-1.5 instead 2022-11-17 10:19:08 +00:00
Chris Banes 9993c53476 Update icons to use p-2 2022-11-17 10:05:20 +00:00
Chris Banes 3a4e976273 Improve visuals of sharing links 2022-11-16 13:46:39 +00:00
Nuno Coração 6f594b5c2b Merge pull request #248 from nunocoracao/dependabot/npm_and_yarn/dev/chart.js-4.0.1 2022-11-15 08:01:12 +00:00
dependabot[bot] 686ec53f92 📌 Bump chart.js from 3.9.1 to 4.0.1
Bumps [chart.js](https://github.com/chartjs/Chart.js) from 3.9.1 to 4.0.1.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v3.9.1...v4.0.1)

---
updated-dependencies:
- dependency-name: chart.js
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-15 05:13:21 +00:00
Nuno Coração ea0a6c3698 Merge pull request #247 from nunocoracao/dev
Dev
2022-11-14 20:54:42 +00:00
Nuno Coração 6e4ed17ab7 tested and prepd release version 2022-11-14 20:53:56 +00:00
Nuno Coração d889efa6d4 Merge pull request #246 from chrisbanes/cb/sharing-links
Allow overwriting of sharing links
2022-11-14 20:45:19 +00:00
Nuno Coração 0d9f458c52 Merge pull request #244 from nunocoracao/dependabot/npm_and_yarn/dev/tailwindcss-3.2.4
📌 Bump tailwindcss from 3.2.3 to 3.2.4
2022-11-14 20:44:44 +00:00
Nuno Coração 7e3a8c1226 Merge pull request #243 from vorons/patch-1
Create ru.yaml
2022-11-14 20:44:26 +00:00
Chris Banes cc1c2d70e0 Allow overwriting of sharing links
This PR changes this by grouping the links within an object key: `Site.Data.sharing.links`. This means that sites can provide their own
`data/sharing.json` file and overwrite the `links` key, to provide links of their own links.
2022-11-14 09:53:48 +00:00
dependabot[bot] de2d75eee9 📌 Bump tailwindcss from 3.2.3 to 3.2.4
Bumps [tailwindcss](https://github.com/tailwindlabs/tailwindcss) from 3.2.3 to 3.2.4.
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/compare/v3.2.3...v3.2.4)

---
updated-dependencies:
- dependency-name: tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-14 05:12:02 +00:00
Сергей Ворон dbcce7f34b Create ru.yaml 2022-11-14 07:46:55 +03:00
Nuno Coração 12471e0aa3 Merge pull request #242 from nunocoracao/dev
Merge dev
2022-11-14 00:05:10 +00:00
Nuno Coração a15af8eca6 bumped version 2022-11-14 00:04:26 +00:00
Nuno Coração 32fcb1a3be Merge pull request #241 from madoke/main
✨ Add default background image theme param
2022-11-14 00:00:29 +00:00
madoke 0219bb263c add default background image to theme 2022-11-13 23:28:38 +00:00
Nuno Coração b27d78945c removed buymeacoffee and merch buttons 2022-11-13 23:06:24 +00:00
Nuno Coração 20e90ec4d4 Merge pull request #240 from nunocoracao/dev
Dev
2022-11-13 19:41:34 +00:00
Nuno Coração 59e5daa31f Merge pull request #239 from nunocoracao/236-buymeacoffee-integration
Integration with buymeacoffee
2022-11-13 19:40:13 +00:00
Nuno Coração a9e6215540 implemented global widget for buymeacoffee 2022-11-13 19:39:55 +00:00
Nuno Coração 3b265eaa0d Merge pull request #238 from nunocoracao/main
sync
2022-11-13 19:12:38 +00:00
Nuno Coração 3a158cf347 Merge pull request #237 from nunocoracao/main
sync
2022-11-13 19:12:10 +00:00
Nuno Coração 123add8b6c Update _index.md 2022-11-13 16:17:25 +00:00
Nuno Coração b19e10d4a4 Update README.md 2022-11-13 16:15:59 +00:00
Nuno Coração a4ea872dd7 Update README.md 2022-11-13 16:07:07 +00:00
Nuno Coração 034be4227b add logo to main folder 2022-11-13 15:37:06 +00:00
Nuno Coração 666b12ab35 Update README.md 2022-11-13 13:54:31 +00:00
Nuno Coração 84174baea2 fixed buymeacoffee 2022-11-13 13:52:44 +00:00
Nuno Coração 544fa955f6 added buymeacoffee 2022-11-13 13:48:26 +00:00
Nuno Coração 301f179fb0 Update README.md 2022-11-13 13:37:36 +00:00
Nuno Coração 3cd3c6ee97 Update README.md 2022-11-13 13:33:45 +00:00
Nuno Coração 55bb04f362 Merge pull request #235 from nunocoracao/dev
Dev
2022-11-13 12:27:35 +00:00
Nuno Coração d69989892b final tests and version bump 2022-11-13 12:27:19 +00:00
Nuno Coração adce4c7ea2 Merge pull request #234 from tarunjana/patch-1
Improve Bengali translation
2022-11-13 12:22:39 +00:00
Nuno Coração 553480f1df Merge pull request #233 from nunocoracao/dependabot/npm_and_yarn/dev/tailwindcss/typography-0.5.8
📌 Bump @tailwindcss/typography from 0.5.7 to 0.5.8
2022-11-13 12:19:07 +00:00
Nuno Coração 5b93191548 added list level cardView control 2022-11-11 17:14:05 +00:00
Tarun Kumar Jana ce4cbd3c75 Improve Bengali translation
Added the following keys:

- `views`
- `likes`
- `show_more`
2022-11-11 20:53:52 +05:30
dependabot[bot] 2991e0289d 📌 Bump @tailwindcss/typography from 0.5.7 to 0.5.8
Bumps [@tailwindcss/typography](https://github.com/tailwindcss/typography) from 0.5.7 to 0.5.8.
- [Release notes](https://github.com/tailwindcss/typography/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss-typography/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tailwindcss/typography/compare/v0.5.7...v0.5.8)

---
updated-dependencies:
- dependency-name: "@tailwindcss/typography"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-11 05:19:19 +00:00
Nuno Coração 963b79e1aa updated version 2022-11-10 22:24:15 +00:00
Nuno Coração 24ba04bb43 Merge pull request #231 from nunocoracao/230-an-option-to-disable-blur-on-scroll-for-articles-with-featured-images
230 an option to disable blur on scroll for articles with featured images
2022-11-10 22:21:18 +00:00
Nuno Coração 1b0c182819 added layoutBackgroundBlur parameter to articles 2022-11-10 22:21:05 +00:00
Nuno Coração b8a56a299b Merge pull request #228 from nunocoracao/revert-223-dependabot/npm_and_yarn/tailwindcss/typography-0.5.8
Revert "📌 Bump @tailwindcss/typography from 0.5.7 to 0.5.8"
2022-11-10 21:54:17 +00:00
Nuno Coração cdc78b5128 Revert "📌 Bump @tailwindcss/typography from 0.5.7 to 0.5.8" 2022-11-10 21:54:04 +00:00
Nuno Coração e93a63f9d3 Merge pull request #223 from nunocoracao/dependabot/npm_and_yarn/tailwindcss/typography-0.5.8
📌 Bump @tailwindcss/typography from 0.5.7 to 0.5.8
2022-11-10 21:53:56 +00:00
Nuno Coração 837cb9c19e Merge pull request #224 from nunocoracao/dependabot/npm_and_yarn/heroicons/react-2.0.13
📌 Bump @heroicons/react from 2.0.12 to 2.0.13
2022-11-10 21:53:39 +00:00
Nuno Coração 6e1881c704 Merge branch 'dev' into dependabot/npm_and_yarn/heroicons/react-2.0.13 2022-11-10 21:53:27 +00:00
Nuno Coração c0d0a26383 Merge pull request #225 from nunocoracao/dependabot/npm_and_yarn/mermaid-9.2.2
📌 Bump mermaid from 9.1.7 to 9.2.2
2022-11-10 21:51:00 +00:00
Nuno Coração a1a28b1b29 Merge pull request #226 from nunocoracao/dependabot/npm_and_yarn/headlessui/react-1.7.4
📌 Bump @headlessui/react from 1.7.3 to 1.7.4
2022-11-10 21:50:35 +00:00
Nuno Coração 64cb4fcd4b Merge pull request #227 from nunocoracao/dependabot/npm_and_yarn/tailwindcss-3.2.3
📌 Bump tailwindcss from 3.2.1 to 3.2.3
2022-11-10 21:49:55 +00:00
Nuno Coração 25c89f8812 Update dependabot.yml 2022-11-10 21:47:18 +00:00
dependabot[bot] 8752844e99 📌 Bump tailwindcss from 3.2.1 to 3.2.3
Bumps [tailwindcss](https://github.com/tailwindlabs/tailwindcss) from 3.2.1 to 3.2.3.
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/compare/v3.2.1...v3.2.3)

---
updated-dependencies:
- dependency-name: tailwindcss
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-10 21:46:51 +00:00
dependabot[bot] 9829d63bce 📌 Bump @headlessui/react from 1.7.3 to 1.7.4
Bumps [@headlessui/react](https://github.com/tailwindlabs/headlessui/tree/HEAD/packages/@headlessui-react) from 1.7.3 to 1.7.4.
- [Release notes](https://github.com/tailwindlabs/headlessui/releases)
- [Changelog](https://github.com/tailwindlabs/headlessui/blob/main/packages/@headlessui-react/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/headlessui/commits/@headlessui/react@v1.7.4/packages/@headlessui-react)

---
updated-dependencies:
- dependency-name: "@headlessui/react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-10 21:46:36 +00:00
dependabot[bot] 0bb94e1b76 📌 Bump mermaid from 9.1.7 to 9.2.2
Bumps [mermaid](https://github.com/mermaid-js/mermaid) from 9.1.7 to 9.2.2.
- [Release notes](https://github.com/mermaid-js/mermaid/releases)
- [Changelog](https://github.com/mermaid-js/mermaid/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/mermaid-js/mermaid/compare/v9.1.7...v9.2.2)

---
updated-dependencies:
- dependency-name: mermaid
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-10 21:45:57 +00:00
dependabot[bot] 20e739a910 📌 Bump @heroicons/react from 2.0.12 to 2.0.13
Bumps [@heroicons/react](https://github.com/tailwindlabs/heroicons) from 2.0.12 to 2.0.13.
- [Release notes](https://github.com/tailwindlabs/heroicons/releases)
- [Changelog](https://github.com/tailwindlabs/heroicons/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/heroicons/compare/v2.0.12...v2.0.13)

---
updated-dependencies:
- dependency-name: "@heroicons/react"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-10 21:45:40 +00:00
dependabot[bot] 4d94addec4 📌 Bump @tailwindcss/typography from 0.5.7 to 0.5.8
Bumps [@tailwindcss/typography](https://github.com/tailwindcss/typography) from 0.5.7 to 0.5.8.
- [Release notes](https://github.com/tailwindcss/typography/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss-typography/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tailwindcss/typography/compare/v0.5.7...v0.5.8)

---
updated-dependencies:
- dependency-name: "@tailwindcss/typography"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-11-10 21:45:27 +00:00
Nuno Coração e27e62f90d Create dependabot.yml 2022-11-10 21:44:43 +00:00
Nuno Coração af1dd844ff Update _index.md 2022-11-09 12:24:53 +00:00
Nuno Coração 8d66fd32ad Update _index.md 2022-11-09 12:24:25 +00:00
Nuno Coração 5bb5684eb2 Update _index.md 2022-11-09 12:23:42 +00:00
Nuno Coração 4f6dc780c8 Update package.json 2022-11-09 12:05:48 +00:00
Nuno Coração 30a98d5705 Merge pull request #221 from nunocoracao/220-lists-should-also-have-views-and-likes
added likes and views to lists
2022-11-09 12:05:28 +00:00
Nuno Coração 38888897b5 added likes and views to lists 2022-11-09 12:05:11 +00:00
Nuno Coração d5563e95b0 updated showcases 2022-11-07 22:39:00 +00:00
Nuno Coração 51bcb4b3d1 added blowfish lite to showcase 2022-11-07 21:53:11 +00:00
Nuno Coração c456627c39 small fix on background 2022-11-06 23:16:52 +00:00
Nuno Coração 7189216109 Merge pull request #218 from nunocoracao/217-search-modal-z-index
Fixed z-index of search modal
2022-11-06 23:11:19 +00:00
Nuno Coração b6d57a2ed9 Fixed z-index of search modal 2022-11-06 23:11:00 +00:00
Nuno Coração b4e4f46ed9 Update package.json 2022-11-06 23:04:39 +00:00
Nuno Coração 1399cc60a3 Update package.json 2022-11-06 23:04:21 +00:00
Nuno Coração c977caaa2b Merge pull request #216 from nunocoracao/213-lists-should-support-coverfeature-images
213 lists should support coverfeature images
2022-11-06 23:04:00 +00:00
Nuno Coração 4008bbf92c added docs 2022-11-06 23:03:40 +00:00
Nuno Coração afd1928cd2 added support for cover images in lists 2022-11-06 22:57:15 +00:00
Nuno Coração 1ea543da24 Merge pull request #215 from nunocoracao/211-fixed-header-+-navigating-to-a-anchor-=-bug
fixed anchors
2022-11-06 22:29:22 +00:00
Nuno Coração 8ec3504224 fixed anchors 2022-11-06 22:28:52 +00:00
Nuno Coração c7156995e7 Merge pull request #214 from nunocoracao/212-background-hero-image-margin-top-is-too-high
corrected margins for backgroun hero image
2022-11-06 21:11:50 +00:00
Nuno Coração 2de1df4227 corrected margins for backgroun hero image 2022-11-06 21:11:36 +00:00
Nuno Coração 7bcfea2cfb adding header.layout to docs 2022-11-06 19:56:14 +00:00
Nuno Coração 1263500587 Update package.json 2022-11-06 19:49:38 +00:00
Nuno Coração af3af38509 Merge pull request #210 from nunocoracao/201-fixed-main-menu
added new fixed header
2022-11-06 19:49:03 +00:00
Nuno Coração 28689bcf58 added new fixed header 2022-11-06 19:48:41 +00:00
Nuno Coração 5bfacfa68b Merge pull request #209 from nunocoracao/204-homepage-background-mode-blur-improvements
corrected case for layoutBackgroundBlur parameter
2022-11-06 19:10:23 +00:00
Nuno Coração 2f2b159cb7 corrected case for layoutBackgroundBlur parameter 2022-11-06 19:09:18 +00:00
Nuno Coração cade256b72 Merge pull request #203 from kame404/main
improved Japanese translation
2022-11-06 19:07:14 +00:00
Nuno Coração 16ef0b849e Merge pull request #208 from nunocoracao/204-homepage-background-mode-blur-improvements
add blur parameter to homepage background setup
2022-11-06 19:05:20 +00:00
Nuno Coração c3ee4b41be add blur parameter to homepage background setup 2022-11-06 19:05:01 +00:00
Nuno Coração 5f52400e1e Merge pull request #207 from nunocoracao/205-cards-background-blur-improvements
removed blur from list view without card config
2022-11-06 18:54:22 +00:00
Nuno Coração 3751b9970b removed blur from list view without card config 2022-11-06 18:54:01 +00:00
Nuno Coração e708455557 Merge pull request #206 from nunocoracao/200-homepage-background-icons-in-light-mode-need-to-be-darker
Improvements to icon colors in homepage background setup
2022-11-06 18:49:16 +00:00
Nuno Coração 9a847af0e7 corrected colors 2022-11-06 18:48:41 +00:00
Nuno Coração 3948277d5f small fix on docs 2022-11-06 18:43:35 +00:00
kame404 a4daa9ddca improved Japanese translation 2022-11-06 22:27:57 +09:00
Nuno Coração 10be63c502 Update package.json 2022-11-06 10:58:36 +00:00
Nuno Coração 2c682cfef2 Merge pull request #202 from marmtshm/main
show more in recent articles is part of i18n
2022-11-06 10:58:20 +00:00
marmtshm fe6eaa5e98 show more in recent articles is part of i18n 2022-11-06 09:34:56 +07:00
Nuno Coração d6b6575346 Merge pull request #198 from nunocoracao/197-blur-further-improvements-mobile-looks-weird
enhavements to blur effects
2022-11-06 01:46:24 +00:00
Nuno Coração 9b9aea0bec enhavements to blur effects 2022-11-06 01:45:53 +00:00
Nuno Coração 1a82400bad Merge pull request #196 from nunocoracao/193-blur-in-article-background-needs-improvements
enhavements to blur effects
2022-11-06 01:00:03 +00:00
Nuno Coração 83f28f8cca enhavements to blur effects 2022-11-06 00:59:44 +00:00
Nuno Coração 9848ca7b44 Merge pull request #195 from nunocoracao/194-background-homepage-needs-a-max-width
updates to the homepage background setup
2022-11-06 00:15:47 +00:00
Nuno Coração 8f588f5175 updates to the homepage background setup 2022-11-06 00:15:29 +00:00
Nuno Coração 642db32def Update params.toml 2022-11-05 22:31:35 +00:00
Nuno Coração 196ba07e48 fixed bug in background setup 2022-11-05 22:28:30 +00:00
Nuno Coração cde1150c41 updated version 2022-11-05 22:06:39 +00:00
Nuno Coração c044f16f30 fixed bug in background setup 2022-11-05 22:06:13 +00:00
Nuno Coração 85295939ac final adjustments for background 2022-11-05 21:58:55 +00:00
Nuno Coração 00f7c66acb final adjustments for background 2022-11-05 21:58:40 +00:00
Nuno Coração 54e42158f4 Update package.json 2022-11-05 21:50:07 +00:00
Nuno Coração 747b6af3fd Merge pull request #192 from nunocoracao/190-background-images-hero-+-articles-fill-the-screen
improvements to background component in homepage and articles
2022-11-05 21:49:13 +00:00
Nuno Coração fd1420d209 improvements to background component in homepage and articles 2022-11-05 21:48:45 +00:00
Nuno Coração eb0f76cf4d Merge pull request #189 from sajayprakash/patch-1
update user list
2022-11-05 15:19:02 +00:00
Nuno Coração c8491598ed Merge pull request #191 from nunocoracao/177-new-list-view-cards
implemented card gallery for lists
2022-11-05 15:18:26 +00:00
Nuno Coração 740e573245 Merge branch 'main' into 177-new-list-view-cards 2022-11-05 15:18:20 +00:00
Nuno Coração 79e2046a5a fixed conflicts 2022-11-05 15:13:11 +00:00
Nuno Coração f2d3ff1572 implemented card gallery for lists 2022-11-05 15:11:20 +00:00
Sajay fe3e2fe9f6 update user list
added my personal site
2022-11-05 12:24:13 +00:00
Nuno Coração 032ff6ce86 Merge pull request #188 from nunocoracao/182-where-is-show-more-in-translations
show more in recent articles is part of i18n
2022-11-05 11:55:54 +00:00
Nuno Coração 215d8ae4a2 show more in recent articles is part of i18n 2022-11-05 11:55:39 +00:00
Nuno Coração c03c522a27 Merge pull request #187 from nunocoracao/186-add-the-envelope-icon-so-that-users-have-multiple-ways-to-display-email-contact
added envelope icon
2022-11-05 11:40:54 +00:00
Nuno Coração bb400dd936 added enveloper icon 2022-11-05 11:40:23 +00:00
Nuno Coração 95351dec9a fixed identation 2022-11-05 11:37:11 +00:00
Nuno Coração e10536e721 corrected indonesia flag in docs 2022-11-05 11:36:43 +00:00
Nuno Coração 1b9f9c5a1c Merge pull request #178 from marmtshm/main
Add id.yaml (Bahasa Indonesia)
2022-11-05 11:34:08 +00:00
Nuno Coração d2dcbf8830 Update README.md 2022-10-31 16:24:45 +00:00
marmtshm fd2b585a55 update docs 2022-10-31 23:23:37 +07:00
Nuno Coração 10148953fb Merge pull request #180 from nunocoracao/179-typo-in-documentation
Fixed typo in sample article
2022-10-31 16:12:03 +00:00
Nuno Coração d7cd7cf9fb Update index.md 2022-10-31 16:11:04 +00:00
marmtshm 139d4164da Add id.yaml (Bahasa Indonesia) 2022-10-31 17:40:51 +07:00
Nuno Coração 675c1ab0f2 Update package.json 2022-10-29 19:12:05 +01:00
Nuno Coração aa57505c94 Merge pull request #174 from nunocoracao/173-author-links-are-broken
fixed broken author links
2022-10-29 19:11:52 +01:00
Nuno Coração b4cce7043f fixed broken author links 2022-10-29 19:11:34 +01:00
Nuno Coração 02979c1fa5 Merge pull request #172 from nunocoracao/170-series-improvements
series improvements
2022-10-29 17:02:33 +01:00
Nuno Coração ecbab2a7a6 series improvements 2022-10-29 17:02:14 +01:00
Nuno Coração 6f1ab5638a Merge pull request #171 from nunocoracao/169-improvements-to-author-display
impovements to authors display
2022-10-29 16:53:46 +01:00
Nuno Coração a336ae0261 impovements to authors display 2022-10-29 16:53:27 +01:00
Nuno Coração dce219e75b Merge pull request #168 from nunocoracao/95-dependencies-update
updated dependencies
2022-10-29 16:01:21 +01:00
Nuno Coração af7fd6c7fc updated dependencies 2022-10-29 16:00:59 +01:00
Nuno Coração 8275ca69f5 regen main.css 2022-10-29 15:44:03 +01:00
Nuno Coração 7025db8d68 Merge pull request #167 from insidemordecai/main
fix: broken link and add: user website
2022-10-29 15:24:18 +01:00
Mordecai K f1d68f29e6 add: user website 2022-10-29 14:13:09 +03:00
Mordecai K 021fe0b565 fix: broken link 2022-10-29 14:09:16 +03:00
Nuno Coração 2c15da1273 Update package.json 2022-10-28 19:07:40 +01:00
Nuno Coração e76cbb53ae added showMenu to configs to highlight feature 2022-10-28 18:39:36 +01:00
Nuno Coração 5a734c1a51 Merge pull request #129 from madoke/main
Optionally disable footer menu. Enabled by default
2022-10-28 18:36:18 +01:00
Nuno CoraçãoandDavid Simão 54a99f72e0 Update config/_default/params.toml
Co-authored-by: David Simão <madoke@users.noreply.github.com>
2022-10-28 18:34:39 +01:00
Nuno Coração a366cab831 Merge branch 'main' into main 2022-10-28 18:34:13 +01:00
Nuno Coração 2c15750c9e Merge pull request #166 from nunocoracao/163-option-to-enabledisable-medium-zoom-image-in-paramstoml
added disableImageZoom parameter to disable image zoom
2022-10-28 18:32:14 +01:00
Nuno Coração 243267d281 added disableImageZoom parameter to disable image zoom 2022-10-28 18:31:56 +01:00
Nuno Coração 828f5cda23 Merge pull request #165 from nunocoracao/164-background-hero-layout-aligns-long-titles-to-the-left-on-mobile
fixed background/hero homepage layouts not centering on mobile
2022-10-28 18:03:01 +01:00
Nuno Coração c26bae0cb7 fixed background/hero homepage layouts not centering on mobile 2022-10-28 18:02:37 +01:00
Nuno Coração e354929549 updated version 2022-10-25 23:47:57 +01:00
Nuno Coração 3d7ac720ee Merge pull request #158 from nunocoracao/157-links-rendering-with-extra-white-space
removed extra whitespace from links
2022-10-25 23:47:23 +01:00
Nuno Coração 89ab364735 removed extra whitespace from links 2022-10-25 23:46:52 +01:00
Nuno Coração 9cb99c0ec7 added katex shortcode example 2022-10-25 19:55:53 +01:00
madoke c049cec8df fix typo/markdown 2022-10-24 21:56:16 +01:00
madoke 4a8c23c9d5 showMenu defaults to enabled 2022-10-24 21:54:37 +01:00
madoke 2211ce50be Adds documentation to showMenu parameter 2022-10-24 21:54:22 +01:00
Nuno Coração 4517ae0f0f Update index.md 2022-10-24 14:00:36 +01:00
Nuno Coração 27098fab5f Update README.md 2022-10-23 22:31:50 +01:00
Nuno Coração 952d259602 Update package.json 2022-10-23 22:29:36 +01:00
Nuno Coração fc7e02a6fb Merge pull request #155 from nunocoracao/138-update-the-preferred-installation-method-in-docs
changed preferred installation method
2022-10-23 22:28:53 +01:00
Nuno Coração 9f0f603f15 changed preferred installation method 2022-10-23 22:28:35 +01:00
Nuno Coração 24ee8b12ef Merge pull request #154 from nunocoracao/153-typo-in-the-blowfishs-documentation-on-homepage-layout-section
fixed errors in homepage layout docs
2022-10-23 22:12:18 +01:00
Nuno Coração 82ae111d35 fixed errors in lyout docs 2022-10-23 22:11:49 +01:00
Nuno Coração cc1720c282 Update README.md 2022-10-21 09:36:18 +01:00
Nuno Coração 2152d37467 Update README.md 2022-10-21 09:34:37 +01:00
Nuno Coração 890958d6c8 Merge pull request #152 from nunocoracao/150-fix-prose-width
fixed width in Term partials
2022-10-20 23:28:58 +01:00
Nuno Coração fe5d9b0246 fixed width in Term partials 2022-10-20 23:28:15 +01:00
Nuno Coração 7087e71d9a Merge pull request #151 from nunocoracao/150-fix-prose-width
improved readibilit of content
2022-10-20 22:04:46 +01:00
Nuno Coração 539cfd6443 improved readibilit of content 2022-10-20 22:03:49 +01:00
Nuno Coração 4b45ff114f Update package.json 2022-10-20 12:16:36 +01:00
Nuno Coração 0253344873 Merge pull request #149 from nunocoracao/148-images-in-both-hero-card-and-background-are-not-loaded-from-assets-folder
fixed bug in homepage image loading
2022-10-20 12:16:18 +01:00
Nuno Coração c64eac525a fixed bug 2022-10-20 12:15:37 +01:00
Nuno Coração 03cf3aec76 updated installation instructions for hugo 2022-10-18 22:03:33 +01:00
Nuno Coração 2ef97effed Update package.json 2022-10-18 21:58:45 +01:00
Nuno Coração 803f7dcc52 Update go.mod 2022-10-18 21:57:44 +01:00
Nuno Coração 76e7fbdeb0 Merge pull request #141 from lukapiplica/main
Slight fix for the name.
2022-10-18 08:14:31 +01:00
lukapiplica 5d992f1719 Fixed docs for Croatian
Slight change from Hrvatski to Croatian.
2022-10-18 03:03:12 +02:00
Nuno Coração c88306afad fixed bug in series 2022-10-17 22:50:08 +01:00
madoke 11120610fd Optionally disable footer menu. Enabled by default 2022-10-16 21:28:27 +01:00
281 changed files with 4399 additions and 1998 deletions

No files matched your search

+5
View File
@@ -0,0 +1,5 @@
{
"projects": {
"default": "blowfish-21fff"
}
}
+24
View File
@@ -0,0 +1,24 @@
# To get started with Dependabot version updates, you'll need to specify which
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
version: 2
updates:
- package-ecosystem: "npm"
directory: "/"
target-branch: "dev"
schedule:
interval: "daily"
commit-message:
prefix: "📌"
labels:
- "dependencies"
- package-ecosystem: "github-actions"
directory: "/"
target-branch: "dev"
schedule:
interval: "weekly"
day: "sunday"
commit-message:
prefix: "👷"
labels:
- "dependencies"
+54
View File
@@ -0,0 +1,54 @@
name: Build Theme
on: [pull_request_target]
jobs:
build:
runs-on: ubuntu-latest
if: ${{ github.actor == 'dependabot[bot]' }}
steps:
- name: Checkout
uses: actions/checkout@v3
with:
ref: "${{ github.head_ref }}"
- name: Install dependencies and Build Theme
uses: actions/setup-node@v3
- run: npm install
- run: npm run assets
- name: Commit and push Chart.js changes
uses: stefanzweifel/git-auto-commit-action@v4
with:
branch: "${{ github.head_ref }}"
push_options: "--dry-run"
file_pattern: "assets/lib/chart/*"
commit_message: "📦 Update packaged ChartJS"
- name: Commit Fuse changes
uses: stefanzweifel/git-auto-commit-action@v4
with:
branch: "${{ github.head_ref }}"
push_options: "--dry-run"
file_pattern: "assets/lib/fuse/*"
commit_message: "📦 Update packaged FuseJS"
- name: Commit KaTeX changes
uses: stefanzweifel/git-auto-commit-action@v4
with:
branch: "${{ github.head_ref }}"
push_options: "--dry-run"
file_pattern: "assets/lib/katex/*"
commit_message: "📦 Update packaged KaTeX"
- name: Commit Mermaid changes
uses: stefanzweifel/git-auto-commit-action@v4
with:
branch: "${{ github.head_ref }}"
push_options: "--dry-run"
file_pattern: "assets/lib/mermaid/*"
commit_message: "📦 Update packaged Mermaid"
- run: npm run build
- name: Commit CSS changes
uses: stefanzweifel/git-auto-commit-action@v4
with:
branch: "${{ github.head_ref }}"
push_options: "--dry-run"
file_pattern: "assets/css/compiled/main.css"
commit_message: "💄 Rebuild CSS"
- run: git push
+35
View File
@@ -0,0 +1,35 @@
name: Deploy Preview to Firebase
'on': pull_request
jobs:
build_and_preview:
if: '${{ github.event.pull_request.head.repo.full_name == github.repository }}'
runs-on: ubuntu-latest
steps:
- name: Hugo setup
uses: peaceiris/actions-hugo@v2.4.12
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: 'true'
- name: Check out code into the Go module directory
uses: actions/checkout@v2
with:
submodules: true # Fetch Hugo themes (true OR recursive)
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
- name: Build with Hugo
env:
# For maximum backward compatibility with Hugo modules
HUGO_ENVIRONMENT: production
HUGO_ENV: production
run: |
hugo --minify -s exampleSite --themesDir ../.. -d ../public --baseURL https://blowfish.page
- name: Deploy preview
uses: FirebaseExtended/action-hosting-deploy@v0
with:
repoToken: '${{ secrets.GITHUB_TOKEN }}'
firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_BLOWFISH_21FFF }}'
expires: 30d
channelId: preview
projectId: blowfish-21fff
+36
View File
@@ -0,0 +1,36 @@
name: Deploy Production to Firebase
'on':
push:
branches:
- main
jobs:
build_and_deploy:
runs-on: ubuntu-latest
steps:
- name: Hugo setup
uses: peaceiris/actions-hugo@v2.4.12
env:
ACTIONS_ALLOW_UNSECURE_COMMANDS: 'true'
- name: Check out code into the Go module directory
uses: actions/checkout@v2
with:
submodules: true # Fetch Hugo themes (true OR recursive)
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
- name: Build with Hugo
env:
# For maximum backward compatibility with Hugo modules
HUGO_ENVIRONMENT: production
HUGO_ENV: production
run: |
hugo --minify -s exampleSite --themesDir ../.. -d ../public --baseURL https://blowfish.page
- name: Deploy Production
uses: FirebaseExtended/action-hosting-deploy@v0
with:
repoToken: '${{ secrets.GITHUB_TOKEN }}'
firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_BLOWFISH_21FFF }}'
channelId: live
projectId: blowfish-21fff
+25
View File
@@ -0,0 +1,25 @@
name: Test Build
on: [push]
jobs:
build:
name: Build Example Site
runs-on: ubuntu-latest
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
steps:
- name: Checkout
uses: actions/checkout@v3
with:
submodules: true
fetch-depth: 0
- name: Setup Hugo
uses: peaceiris/actions-hugo@v2
with:
hugo-version: "latest"
- name: Build
working-directory: ./exampleSite
run: hugo --minify --themesDir ../.. --baseURL https://nunocoracao.github.io/blowfish/
+41 -8
View File
@@ -1,11 +1,19 @@
# 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>
[![Blowfish Docs Deploy](https://github.com/nunocoracao/blowfish/actions/workflows/pages.yml/badge.svg)](https://github.com/nunocoracao/blowfish/actions/workflows/pages.yml)
[![Minimum Hugo Version](https://img.shields.io/static/v1?label=min-HUGO-version&message=0.87.0&color=blue&logo=hugo)](https://github.com/gohugoio/hugo/releases/tag/v0.87.0)
[![GitHub](https://img.shields.io/github/license/nunocoracao/blowfish)](https://github.com/nunocoracao/blowfish/blob/main/LICENSE)
[![Blowfish](https://img.shields.io/badge/Hugo--Themes-@Blowfish-blue)](https://themes.gohugo.io/themes/blowfish/)
![code-size](https://img.shields.io/github/languages/code-size/nunocoracao/blowfish)
Blowfish is designed to be a powerful, lightweight theme for [Hugo](https://gohugo.io). It's built using Tailwind CSS with a clean and minimalist design that prioritises to your content. The theme is a fork of [Congo](https://github.com/jpanther/congo).
🌏 [Demo site](https://nunocoracao.github.io/blowfish/)
📑 [Theme documentation](https://nunocoracao.github.io/blowfish/docs/)
🌏 [Demo site](https://blowfish.page/)
📑 [Theme documentation](https://blowfish.page/docs/)
💎 [Merch Store](http://tee.pub/lic/qwSlWVBL5zc)
🐛 [Bug reports & issues](https://github.com/nunocoracao/blowfish/issues)
💡 [Questions & feature requests](https://github.com/nunocoracao/blowfish/discussions)
@@ -22,9 +30,11 @@ Blowfish is designed to be a powerful, lightweight theme for [Hugo](https://gohu
- Views count & like mechanism
- Multiple homepage layouts
- Support for multiple authors
- Support for series of articles
- Flexible with any content types, taxonomies and menus
- Multilingual content support inlcuding support for RTL languages
- Ability to link to posts on third-party websites
- Buymeacoffee integration
- Client-side site search powered by Fuse.js
- Diagrams and visualisations using Mermaid
- Charts using Chart.js
@@ -44,15 +54,37 @@ Blowfish is designed to be a powerful, lightweight theme for [Hugo](https://gohu
## Documentation
Blowfish has [extensive documentation](https://nunocoracao.github.io/blowfish/docs/) that covers all aspects of the theme. Be sure to [read the docs](https://nunocoracao.github.io/blowfish/docs/) to learn more about how to use the theme and its features.
Blowfish has [extensive documentation](https://blowfish.page/docs/) that covers all aspects of the theme. Be sure to [read the docs](https://blowfish.page/docs/) to learn more about how to use the theme and its features.
---
## Installation
Blowfish supports several installation methods - as a Hugo Module (easiest), a git submodule, or as a completely manual install.
Blowfish supports several installation methods - as a git submodule, a Hugo Module, or as a completely manual install.
Detailed instructions for each method can be found in the [Installation](https://nunocoracao.github.io/blowfish/docs/installation) docs. You should consult the documentation for the simplest setup experience. Below is a quick start guide using Hugo modules if you're already confident installing Hugo themes.
Detailed instructions for each method can be found in the [Installation](https://blowfish.page/docs/installation) docs. You should consult the documentation for the simplest setup experience. Below is a quick start guide using submodules if you are using git, or Hugo modules if you're already confident installing Hugo themes.
### Quick start using git submodules
> **Note:** Ensure you have **Git**, **Go**, and **Hugo** installed, and that you have created a new Hugo project before proceeding.
1. From your project directory, initialise git:
```shell
git init
```
2. Configure Blowfish as a git submodule:
```shell
git submodule add -b main https://github.com/nunocoracao/blowfish.git themes/blowfish
```
3. In the root folder of your website, delete the `config.toml` file that was generated by Hugo. Copy the `*.toml` config files from the theme into your `config/_default/` folder.
You will find these theme config files in the Hugo cache directory, or [download a copy](https://minhaskamal.github.io/DownGit/#/home?url=https://github.com/nunocoracao/blowfish/tree/main/config/_default) from GitHub.
4. Follow the [Getting Started](https://blowfish.page/docs/getting-started/) instructions to configure your website.
### Quick start using Hugo
@@ -68,7 +100,7 @@ Detailed instructions for each method can be found in the [Installation](https:/
```toml
[[imports]]
path = "github.com/nunocoracao/blowfish"
path = "github.com/nunocoracao/blowfish/v2"
```
3. Start your server using `hugo server` and the theme will be downloaded automatically.
@@ -79,13 +111,13 @@ Detailed instructions for each method can be found in the [Installation](https:/
You will find these theme config files in the Hugo cache directory, or [download a copy](https://minhaskamal.github.io/DownGit/#/home?url=https://github.com/nunocoracao/blowfish/tree/main/config/_default) from GitHub.
5. Follow the [Getting Started](https://nunocoracao.github.io/blowfish/docs/getting-started/) instructions to configure your website.
5. Follow the [Getting Started](https://blowfish.page/docs/getting-started/) instructions to configure your website.
### Installing theme updates
As new releases are posted, you can update the theme using Hugo. Simply run `hugo mod get -u` from your project directory and the theme will automatically update to the latest release.
Detailed [update instructions](https://nunocoracao.github.io/blowfish/docs/installation/#installing-updates) are available in the docs.
Detailed [update instructions](https://blowfish.page/docs/installation/#installing-updates) are available in the docs.
---
@@ -107,3 +139,4 @@ If you're able to fix a bug or implement a new feature, I welcome PRs for this p
[![Stargazers over time](https://starchart.cc/nunocoracao/blowfish.svg)](https://starchart.cc/nunocoracao/blowfish)
<a rel="me" href="https://masto.ai/@blowfish">Mastodon</a>
File diff suppressed because it is too large. Load diff
+19 -3
View File
@@ -1,4 +1,4 @@
/*! Blowfish v0.0.1 | MIT License | https://github.com/nunocoracao/blowfish */
/*! Blowfish | MIT License | https://github.com/nunocoracao/blowfish */
@tailwind base;
@tailwind components;
@@ -347,6 +347,13 @@ body:has(#menu-controller:checked) {
background-position:center;
}
.thumbnail_card {
height: 250px;
background-repeat:no-repeat;
background-size:cover;
background-position:center;
}
.single_hero_basic {
background-repeat:no-repeat;
background-size:cover;
@@ -376,6 +383,14 @@ body:has(#menu-controller:checked) {
box-shadow: 5px 5px 20px 1px rgba(0, 0, 0, 0.3);
}
.anchor {
display: block;
position: relative;
top: -100px;
height: 0px;
visibility: hidden;
}
@screen sm {
.thumbnail {
min-width: 100%;
@@ -397,6 +412,7 @@ body:has(#menu-controller:checked) {
}
}
.max-w-prose {
max-width: 75ch;
.medium-zoom-image--opened {
z-index: 100;
}
+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path fill="currentColor" d="M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48H48zM0 176V384c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V176L294.4 339.2c-22.8 17.1-54 17.1-76.8 0L0 176z"/></svg>

After

Width:  |  Height:  |  Size: 359 B

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64zM96 136c0-13.3 10.7-24 24-24c137 0 248 111 248 248c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-110.5-89.5-200-200-200c-13.3 0-24-10.7-24-24zm0 96c0-13.3 10.7-24 24-24c83.9 0 152 68.1 152 152c0 13.3-10.7 24-24 24s-24-10.7-24-24c0-57.4-46.6-104-104-104c-13.3 0-24-10.7-24-24zm64 120c0 17.7-14.3 32-32 32s-32-14.3-32-32s14.3-32 32-32s32 14.3 32 32z"/></svg>

After

Width:  |  Height:  |  Size: 544 B

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M0 64C0 46.3 14.3 32 32 32c229.8 0 416 186.2 416 416c0 17.7-14.3 32-32 32s-32-14.3-32-32C384 253.6 226.4 96 32 96C14.3 96 0 81.7 0 64zM128 416c0 35.3-28.7 64-64 64s-64-28.7-64-64s28.7-64 64-64s64 28.7 64 64zM32 160c159.1 0 288 128.9 288 288c0 17.7-14.3 32-32 32s-32-14.3-32-32c0-123.7-100.3-224-224-224c-17.7 0-32-14.3-32-32s14.3-32 32-32z"/></svg>

After

Width:  |  Height:  |  Size: 439 B

+106
View File
@@ -0,0 +1,106 @@
var liked_page = false
if (typeof auth !== 'undefined') {
var id = oid ? oid.replaceAll("/", "-") : oid
var viewed = localStorage.getItem(id);
if (!viewed) {
auth.signInAnonymously()
.then(() => {
var docRef = db.collection('views').doc(id)
localStorage.setItem(id, true);
docRef.get().then((doc) => {
if (doc.exists) {
db.collection('views').doc(id).update({
views: firebase.firestore.FieldValue.increment(1)
});
} else {
db.collection('views').doc(id).set({ views: 1 })
}
}).catch((error) => {
console.log("Error getting document:", error);
});
})
.catch((error) => {
var errorCode = error.code;
var errorMessage = error.message;
console.error(errorCode, errorMessage)
});
}
var id_likes = oid_likes ? oid_likes.replaceAll("/", "-") : oid_likes
var liked = localStorage.getItem(id_likes);
if (liked) {
liked_page = true
document.querySelectorAll("span[id='likes_button_heart']")[0].style.display = ""
document.querySelectorAll("span[id='likes_button_emtpty_heart']")[0].style.display = "none"
document.querySelectorAll("span[id='likes_button_text']")[0].innerText = ""
}
}
function like_article(id_likes) {
auth.signInAnonymously()
.then(() => {
var docRef = db.collection('likes').doc(id_likes)
docRef.get().then((doc) => {
liked_page = true
localStorage.setItem(id_likes, true);
document.querySelectorAll("span[id='likes_button_heart']")[0].style.display = ""
document.querySelectorAll("span[id='likes_button_emtpty_heart']")[0].style.display = "none"
document.querySelectorAll("span[id='likes_button_text']")[0].innerText = ""
if (doc.exists) {
db.collection('likes').doc(id_likes).update({
likes: firebase.firestore.FieldValue.increment(1)
});
} else {
db.collection('likes').doc(id_likes).set({ likes: 1 })
}
}).catch((error) => {
console.log("Error getting document:", error);
});
})
.catch((error) => {
var errorCode = error.code;
var errorMessage = error.message;
console.error(errorCode, errorMessage)
});
}
function remove_like_article(id_likes) {
auth.signInAnonymously()
.then(() => {
var docRef = db.collection('likes').doc(id_likes)
docRef.get().then((doc) => {
liked_page = false
localStorage.removeItem(id_likes);
document.querySelectorAll("span[id='likes_button_heart']")[0].style.display = "none"
document.querySelectorAll("span[id='likes_button_emtpty_heart']")[0].style.display = ""
document.querySelectorAll("span[id='likes_button_text']")[0].innerText = "\xa0Like"
if (doc.exists) {
db.collection('likes').doc(id_likes).update({
likes: firebase.firestore.FieldValue.increment(-1)
});
} else {
db.collection('likes').doc(id_likes).set({ likes: 0 })
}
}).catch((error) => {
console.log("Error getting document:", error);
});
})
.catch((error) => {
var errorCode = error.code;
var errorMessage = error.message;
console.error(errorCode, errorMessage)
});
}
function process_article() {
var id_likes = oid_likes ? oid_likes.replaceAll("/", "-") : oid_likes
if (!liked_page) {
like_article(id_likes)
} else {
remove_like_article(id_likes)
}
}
+5 -4
View File
@@ -1,13 +1,14 @@
/*!
* Chart.js v3.9.1
* Chart.js v4.1.1
* https://www.chartjs.org
* (c) 2022 Chart.js Contributors
* Released under the MIT License
*/
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Chart=e()}(this,(function(){"use strict";function t(){}const e=function(){let t=0;return function(){return t++}}();function i(t){return null==t}function s(t){if(Array.isArray&&Array.isArray(t))return!0;const e=Object.prototype.toString.call(t);return"[object"===e.slice(0,7)&&"Array]"===e.slice(-6)}function n(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)}const o=t=>("number"==typeof t||t instanceof Number)&&isFinite(+t);function a(t,e){return o(t)?t:e}function r(t,e){return void 0===t?e:t}const l=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100:t/e,h=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100*e:+t;function c(t,e,i){if(t&&"function"==typeof t.call)return t.apply(i,e)}function d(t,e,i,o){let a,r,l;if(s(t))if(r=t.length,o)for(a=r-1;a>=0;a--)e.call(i,t[a],a);else for(a=0;a<r;a++)e.call(i,t[a],a);else if(n(t))for(l=Object.keys(t),r=l.length,a=0;a<r;a++)e.call(i,t[l[a]],l[a])}function u(t,e){let i,s,n,o;if(!t||!e||t.length!==e.length)return!1;for(i=0,s=t.length;i<s;++i)if(n=t[i],o=e[i],n.datasetIndex!==o.datasetIndex||n.index!==o.index)return!1;return!0}function f(t){if(s(t))return t.map(f);if(n(t)){const e=Object.create(null),i=Object.keys(t),s=i.length;let n=0;for(;n<s;++n)e[i[n]]=f(t[i[n]]);return e}return t}function g(t){return-1===["__proto__","prototype","constructor"].indexOf(t)}function p(t,e,i,s){if(!g(t))return;const o=e[t],a=i[t];n(o)&&n(a)?m(o,a,s):e[t]=f(a)}function m(t,e,i){const o=s(e)?e:[e],a=o.length;if(!n(t))return t;const r=(i=i||{}).merger||p;for(let s=0;s<a;++s){if(!n(e=o[s]))continue;const a=Object.keys(e);for(let s=0,n=a.length;s<n;++s)r(a[s],t,e,i)}return t}function b(t,e){return m(t,e,{merger:x})}function x(t,e,i){if(!g(t))return;const s=e[t],o=i[t];n(s)&&n(o)?b(s,o):Object.prototype.hasOwnProperty.call(e,t)||(e[t]=f(o))}const _={"":t=>t,x:t=>t.x,y:t=>t.y};function y(t,e){const i=_[e]||(_[e]=function(t){const e=v(t);return t=>{for(const i of e){if(""===i)break;t=t&&t[i]}return t}}(e));return i(t)}function v(t){const e=t.split("."),i=[];let s="";for(const t of e)s+=t,s.endsWith("\\")?s=s.slice(0,-1)+".":(i.push(s),s="");return i}function w(t){return t.charAt(0).toUpperCase()+t.slice(1)}const M=t=>void 0!==t,k=t=>"function"==typeof t,S=(t,e)=>{if(t.size!==e.size)return!1;for(const i of t)if(!e.has(i))return!1;return!0};function P(t){return"mouseup"===t.type||"click"===t.type||"contextmenu"===t.type}const D=Math.PI,O=2*D,C=O+D,A=Number.POSITIVE_INFINITY,T=D/180,L=D/2,E=D/4,R=2*D/3,I=Math.log10,z=Math.sign;function F(t){const e=Math.round(t);t=N(t,e,t/1e3)?e:t;const i=Math.pow(10,Math.floor(I(t))),s=t/i;return(s<=1?1:s<=2?2:s<=5?5:10)*i}function V(t){const e=[],i=Math.sqrt(t);let s;for(s=1;s<i;s++)t%s==0&&(e.push(s),e.push(t/s));return i===(0|i)&&e.push(i),e.sort(((t,e)=>t-e)).pop(),e}function B(t){return!isNaN(parseFloat(t))&&isFinite(t)}function N(t,e,i){return Math.abs(t-e)<i}function W(t,e){const i=Math.round(t);return i-e<=t&&i+e>=t}function j(t,e,i){let s,n,o;for(s=0,n=t.length;s<n;s++)o=t[s][i],isNaN(o)||(e.min=Math.min(e.min,o),e.max=Math.max(e.max,o))}function H(t){return t*(D/180)}function $(t){return t*(180/D)}function Y(t){if(!o(t))return;let e=1,i=0;for(;Math.round(t*e)/e!==t;)e*=10,i++;return i}function U(t,e){const i=e.x-t.x,s=e.y-t.y,n=Math.sqrt(i*i+s*s);let o=Math.atan2(s,i);return o<-.5*D&&(o+=O),{angle:o,distance:n}}function X(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function q(t,e){return(t-e+C)%O-D}function K(t){return(t%O+O)%O}function G(t,e,i,s){const n=K(t),o=K(e),a=K(i),r=K(o-n),l=K(a-n),h=K(n-o),c=K(n-a);return n===o||n===a||s&&o===a||r>l&&h<c}function Z(t,e,i){return Math.max(e,Math.min(i,t))}function J(t){return Z(t,-32768,32767)}function Q(t,e,i,s=1e-6){return t>=Math.min(e,i)-s&&t<=Math.max(e,i)+s}function tt(t,e,i){i=i||(i=>t[i]<e);let s,n=t.length-1,o=0;for(;n-o>1;)s=o+n>>1,i(s)?o=s:n=s;return{lo:o,hi:n}}const et=(t,e,i,s)=>tt(t,i,s?s=>t[s][e]<=i:s=>t[s][e]<i),it=(t,e,i)=>tt(t,i,(s=>t[s][e]>=i));function st(t,e,i){let s=0,n=t.length;for(;s<n&&t[s]<e;)s++;for(;n>s&&t[n-1]>i;)n--;return s>0||n<t.length?t.slice(s,n):t}const nt=["push","pop","shift","splice","unshift"];function ot(t,e){t._chartjs?t._chartjs.listeners.push(e):(Object.defineProperty(t,"_chartjs",{configurable:!0,enumerable:!1,value:{listeners:[e]}}),nt.forEach((e=>{const i="_onData"+w(e),s=t[e];Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value(...e){const n=s.apply(this,e);return t._chartjs.listeners.forEach((t=>{"function"==typeof t[i]&&t[i](...e)})),n}})})))}function at(t,e){const i=t._chartjs;if(!i)return;const s=i.listeners,n=s.indexOf(e);-1!==n&&s.splice(n,1),s.length>0||(nt.forEach((e=>{delete t[e]})),delete t._chartjs)}function rt(t){const e=new Set;let i,s;for(i=0,s=t.length;i<s;++i)e.add(t[i]);return e.size===s?t:ALine truncated
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Chart=e()}(this,(function(){"use strict";var t=Object.freeze({__proto__:null,get Colors(){return Ho},get Decimation(){return Yo},get Filler(){return la},get Legend(){return ua},get SubTitle(){return ma},get Title(){return ga},get Tooltip(){return Ta}});function e(){}const i=(()=>{let t=0;return()=>t++})();function s(t){return null==t}function n(t){if(Array.isArray&&Array.isArray(t))return!0;const e=Object.prototype.toString.call(t);return"[object"===e.slice(0,7)&&"Array]"===e.slice(-6)}function o(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)}function a(t){return("number"==typeof t||t instanceof Number)&&isFinite(+t)}function r(t,e){return a(t)?t:e}function l(t,e){return void 0===t?e:t}const h=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100:+t/e,c=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100*e:+t;function d(t,e,i){if(t&&"function"==typeof t.call)return t.apply(i,e)}function u(t,e,i,s){let a,r,l;if(n(t))if(r=t.length,s)for(a=r-1;a>=0;a--)e.call(i,t[a],a);else for(a=0;a<r;a++)e.call(i,t[a],a);else if(o(t))for(l=Object.keys(t),r=l.length,a=0;a<r;a++)e.call(i,t[l[a]],l[a])}function f(t,e){let i,s,n,o;if(!t||!e||t.length!==e.length)return!1;for(i=0,s=t.length;i<s;++i)if(n=t[i],o=e[i],n.datasetIndex!==o.datasetIndex||n.index!==o.index)return!1;return!0}function g(t){if(n(t))return t.map(g);if(o(t)){const e=Object.create(null),i=Object.keys(t),s=i.length;let n=0;for(;n<s;++n)e[i[n]]=g(t[i[n]]);return e}return t}function p(t){return-1===["__proto__","prototype","constructor"].indexOf(t)}function m(t,e,i,s){if(!p(t))return;const n=e[t],a=i[t];o(n)&&o(a)?b(n,a,s):e[t]=g(a)}function b(t,e,i){const s=n(e)?e:[e],a=s.length;if(!o(t))return t;const r=(i=i||{}).merger||m;let l;for(let e=0;e<a;++e){if(l=s[e],!o(l))continue;const n=Object.keys(l);for(let e=0,s=n.length;e<s;++e)r(n[e],t,l,i)}return t}function x(t,e){return b(t,e,{merger:_})}function _(t,e,i){if(!p(t))return;const s=e[t],n=i[t];o(s)&&o(n)?x(s,n):Object.prototype.hasOwnProperty.call(e,t)||(e[t]=g(n))}const y={"":t=>t,x:t=>t.x,y:t=>t.y};function v(t){const e=t.split("."),i=[];let s="";for(const t of e)s+=t,s.endsWith("\\")?s=s.slice(0,-1)+".":(i.push(s),s="");return i}function M(t,e){const i=y[e]||(y[e]=function(t){const e=v(t);return t=>{for(const i of e){if(""===i)break;t=t&&t[i]}return t}}(e));return i(t)}function w(t){return t.charAt(0).toUpperCase()+t.slice(1)}const k=t=>void 0!==t,S=t=>"function"==typeof t,P=(t,e)=>{if(t.size!==e.size)return!1;for(const i of t)if(!e.has(i))return!1;return!0};function D(t){return"mouseup"===t.type||"click"===t.type||"contextmenu"===t.type}const C=Math.PI,O=2*C,A=O+C,T=Number.POSITIVE_INFINITY,L=C/180,E=C/2,R=C/4,I=2*C/3,z=Math.log10,F=Math.sign;function V(t,e,i){return Math.abs(t-e)<i}function B(t){const e=Math.round(t);t=V(t,e,t/1e3)?e:t;const i=Math.pow(10,Math.floor(z(t))),s=t/i;return(s<=1?1:s<=2?2:s<=5?5:10)*i}function N(t){const e=[],i=Math.sqrt(t);let s;for(s=1;s<i;s++)t%s==0&&(e.push(s),e.push(t/s));return i===(0|i)&&e.push(i),e.sort(((t,e)=>t-e)).pop(),e}function W(t){return!isNaN(parseFloat(t))&&isFinite(t)}function H(t,e){const i=Math.round(t);return i-e<=t&&i+e>=t}function j(t,e,i){let s,n,o;for(s=0,n=t.length;s<n;s++)o=t[s][i],isNaN(o)||(e.min=Math.min(e.min,o),e.max=Math.max(e.max,o))}function $(t){return t*(C/180)}function Y(t){return t*(180/C)}function U(t){if(!a(t))return;let e=1,i=0;for(;Math.round(t*e)/e!==t;)e*=10,i++;return i}function X(t,e){const i=e.x-t.x,s=e.y-t.y,n=Math.sqrt(i*i+s*s);let o=Math.atan2(s,i);return o<-.5*C&&(o+=O),{angle:o,distance:n}}function q(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function K(t,e){return(t-e+A)%O-C}function G(t){return(t%O+O)%O}function Z(t,e,i,s){const n=G(t),o=G(e),a=G(i),r=G(o-n),l=G(a-n),h=G(n-o),c=G(n-a);return n===o||n===a||s&&o===a||r>l&&h<c}function J(t,e,i){return Math.max(e,Math.min(i,t))}function Q(t){return J(t,-32768,32767)}function tt(t,e,i,s=1e-6){return t>=Math.min(e,i)-s&&t<=Math.max(e,i)+s}function et(t,e,i){i=i||(i=>t[i]<e);let s,n=t.length-1,o=0;for(;n-o>1;)s=o+n>>1,i(s)?o=s:n=s;return{lo:o,hi:n}}const it=(t,e,i,s)=>et(t,i,s?s=>{const n=t[s][e];return n<i||n===i&&t[s+1][e]===i}:s=>t[s][e]<i),st=(t,e,i)=>et(t,i,(s=>t[s][e]>=i));function nt(t,e,i){let s=0,n=t.length;for(;s<n&&t[s]<e;)s++;for(;n>s&&t[n-1]>i;)n--;return s>0||n<t.length?t.slice(s,n):t}const ot=["push","pop","shift","splice","unshift"];function at(t,e){t._chartjs?t._chartjs.listeners.push(e):(Object.defineProperty(t,"_chartjs",{configurable:!0,enumerable:!1,value:{listeners:[e]}}),ot.forEach((e=>{const i="_onData"+w(e),s=t[e];Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value(...e){const n=s.apply(this,e);return t._chartjs.listeners.forEach((t=>{"function"==typeof t[i]&&t[i](...e)})),n}})})))}function rt(t,e){Line truncated
/*!
* @kurkle/color v0.2.1
* @kurkle/color v0.3.0
* https://github.com/kurkle/color#readme
* (c) 2022 Jukka Kurkela
* Released under the MIT License
*/function bt(t){return t+.5|0}const xt=(t,e,i)=>Math.max(Math.min(t,i),e);function _t(t){return xt(bt(2.55*t),0,255)}function yt(t){return xt(bt(255*t),0,255)}function vt(t){return xt(bt(t/2.55)/100,0,1)}function wt(t){return xt(bt(100*t),0,100)}const Mt={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},kt=[..."0123456789ABCDEF"],St=t=>kt[15&t],Pt=t=>kt[(240&t)>>4]+kt[15&t],Dt=t=>(240&t)>>4==(15&t);function Ot(t){var e=(t=>Dt(t.r)&&Dt(t.g)&&Dt(t.b)&&Dt(t.a))(t)?St:Pt;return t?"#"+e(t.r)+e(t.g)+e(t.b)+((t,e)=>t<255?e(t):"")(t.a,e):void 0}const Ct=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function At(t,e,i){const s=e*Math.min(i,1-i),n=(e,n=(e+t/30)%12)=>i-s*Math.max(Math.min(n-3,9-n,1),-1);return[n(0),n(8),n(4)]}function Tt(t,e,i){const s=(s,n=(s+t/60)%6)=>i-i*e*Math.max(Math.min(n,4-n,1),0);return[s(5),s(3),s(1)]}function Lt(t,e,i){const s=At(t,1,.5);let n;for(e+i>1&&(n=1/(e+i),e*=n,i*=n),n=0;n<3;n++)s[n]*=1-e-i,s[n]+=e;return s}function Et(t){const e=t.r/255,i=t.g/255,s=t.b/255,n=Math.max(e,i,s),o=Math.min(e,i,s),a=(n+o)/2;let r,l,h;return n!==o&&(h=n-o,l=a>.5?h/(2-n-o):h/(n+o),r=function(t,e,i,s,n){return t===n?(e-i)/s+(e<i?6:0):e===n?(i-t)/s+2:(t-e)/s+4}(e,i,s,h,n),r=60*r+.5),[0|r,l||0,a]}function Rt(t,e,i,s){return(Array.isArray(e)?t(e[0],e[1],e[2]):t(e,i,s)).map(yt)}function It(t,e,i){return Rt(At,t,e,i)}function zt(t){return(t%360+360)%360}function Ft(t){const e=Ct.exec(t);let i,s=255;if(!e)return;e[5]!==i&&(s=e[6]?_t(+e[5]):yt(+e[5]));const n=zt(+e[2]),o=+e[3]/100,a=+e[4]/100;return i="hwb"===e[1]?function(t,e,i){return Rt(Lt,t,e,i)}(n,o,a):"hsv"===e[1]?function(t,e,i){return Rt(Tt,t,e,i)}(n,o,a):It(n,o,a),{r:i[0],g:i[1],b:i[2],a:s}}const Vt={x:"dark",Z:"light",Y:"re",X:"blu",W:"gr",V:"medium",U:"slate",A:"ee",T:"ol",S:"or",B:"ra",C:"lateg",D:"ights",R:"in",Q:"turquois",E:"hi",P:"ro",O:"al",N:"le",M:"de",L:"yello",F:"en",K:"ch",G:"arks",H:"ea",I:"ightg",J:"wh"},Bt={OiceXe:"f0f8ff",antiquewEte:"faebd7",aqua:"ffff",aquamarRe:"7fffd4",azuY:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"0",blanKedOmond:"ffebcd",Xe:"ff",XeviTet:"8a2be2",bPwn:"a52a2a",burlywood:"deb887",caMtXe:"5f9ea0",KartYuse:"7fff00",KocTate:"d2691e",cSO:"ff7f50",cSnflowerXe:"6495ed",cSnsilk:"fff8dc",crimson:"dc143c",cyan:"ffff",xXe:"8b",xcyan:"8b8b",xgTMnPd:"b8860b",xWay:"a9a9a9",xgYF:"6400",xgYy:"a9a9a9",xkhaki:"bdb76b",xmagFta:"8b008b",xTivegYF:"556b2f",xSange:"ff8c00",xScEd:"9932cc",xYd:"8b0000",xsOmon:"e9967a",xsHgYF:"8fbc8f",xUXe:"483d8b",xUWay:"2f4f4f",xUgYy:"2f4f4f",xQe:"ced1",xviTet:"9400d3",dAppRk:"ff1493",dApskyXe:"bfff",dimWay:"696969",dimgYy:"696969",dodgerXe:"1e90ff",fiYbrick:"b22222",flSOwEte:"fffaf0",foYstWAn:"228b22",fuKsia:"ff00ff",gaRsbSo:"dcdcdc",ghostwEte:"f8f8ff",gTd:"ffd700",gTMnPd:"daa520",Way:"808080",gYF:"8000",gYFLw:"adff2f",gYy:"808080",honeyMw:"f0fff0",hotpRk:"ff69b4",RdianYd:"cd5c5c",Rdigo:"4b0082",ivSy:"fffff0",khaki:"f0e68c",lavFMr:"e6e6fa",lavFMrXsh:"fff0f5",lawngYF:"7cfc00",NmoncEffon:"fffacd",ZXe:"add8e6",ZcSO:"f08080",Zcyan:"e0ffff",ZgTMnPdLw:"fafad2",ZWay:"d3d3d3",ZgYF:"90ee90",ZgYy:"d3d3d3",ZpRk:"ffb6c1",ZsOmon:"ffa07a",ZsHgYF:"20b2aa",ZskyXe:"87cefa",ZUWay:"778899",ZUgYy:"778899",ZstAlXe:"b0c4de",ZLw:"ffffe0",lime:"ff00",limegYF:"32cd32",lRF:"faf0e6",magFta:"ff00ff",maPon:"800000",VaquamarRe:"66cdaa",VXe:"cd",VScEd:"ba55d3",VpurpN:"9370db",VsHgYF:"3cb371",VUXe:"7b68ee",VsprRggYF:"fa9a",VQe:"48d1cc",VviTetYd:"c71585",midnightXe:"191970",mRtcYam:"f5fffa",mistyPse:"ffe4e1",moccasR:"ffe4b5",navajowEte:"ffdead",navy:"80",Tdlace:"fdf5e6",Tive:"808000",TivedBb:"6b8e23",Sange:"ffa500",SangeYd:"ff4500",ScEd:"da70d6",pOegTMnPd:"eee8aa",pOegYF:"98fb98",pOeQe:"afeeee",pOeviTetYd:"db7093",papayawEp:"ffefd5",pHKpuff:"ffdab9",peru:"cd853f",pRk:"ffc0cb",plum:"dda0dd",powMrXe:"b0e0e6",purpN:"800080",YbeccapurpN:"663399",Yd:"ff0000",Psybrown:"bc8f8f",PyOXe:"4169e1",saddNbPwn:"8b4513",sOmon:"fa8072",sandybPwn:"f4a460",sHgYF:"2e8b57",sHshell:"fff5ee",siFna:"a0522d",silver:"c0c0c0",skyXe:"87ceeb",UXe:"6a5acd",UWay:"708090",UgYy:"708090",snow:"fffafa",sprRggYF:"ff7f",stAlXe:"4682b4",tan:"d2b48c",teO:"8080",tEstN:"d8bfd8",tomato:"ff6347",Qe:"40e0d0",viTet:"ee82ee",JHt:"f5deb3",wEte:"ffffff",wEtesmoke:"f5f5f5",Lw:"ffff00",LwgYF:"9acd32"};let Nt;function Wt(t){Nt||(Nt=function(){const t={},e=Object.keys(Bt),i=Object.keys(Vt);let s,n,o,a,r;for(s=0;s<e.length;s++){for(a=r=e[s],n=0;n<i.length;n++)o=i[n],r=r.replace(o,Vt[o]);o=parseInt(Bt[a],16),t[r]=[o>>16&255,o>>8&255,255&o]}return t}(),Nt.transparent=[0,0,0,0]);const e=Nt[t.toLowerCase()];return e&&{r:e[0],g:e[1],b:e[2],a:4===e.length?e[3]:255}}const jt=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;const Ht=t=>t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055,$t=t=>t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4);function Yt(t,e,i){if(t){let s=Et(t);s[e]=Math.max(0,Math.min(s[e]+s[e]*i,0===e?360:1)),Line truncated
*/function _t(t){return t+.5|0}const yt=(t,e,i)=>Math.max(Math.min(t,i),e);function vt(t){return yt(_t(2.55*t),0,255)}function Mt(t){return yt(_t(255*t),0,255)}function wt(t){return yt(_t(t/2.55)/100,0,1)}function kt(t){return yt(_t(100*t),0,100)}const St={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},Pt=[..."0123456789ABCDEF"],Dt=t=>Pt[15&t],Ct=t=>Pt[(240&t)>>4]+Pt[15&t],Ot=t=>(240&t)>>4==(15&t);function At(t){var e=(t=>Ot(t.r)&&Ot(t.g)&&Ot(t.b)&&Ot(t.a))(t)?Dt:Ct;return t?"#"+e(t.r)+e(t.g)+e(t.b)+((t,e)=>t<255?e(t):"")(t.a,e):void 0}const Tt=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function Lt(t,e,i){const s=e*Math.min(i,1-i),n=(e,n=(e+t/30)%12)=>i-s*Math.max(Math.min(n-3,9-n,1),-1);return[n(0),n(8),n(4)]}function Et(t,e,i){const s=(s,n=(s+t/60)%6)=>i-i*e*Math.max(Math.min(n,4-n,1),0);return[s(5),s(3),s(1)]}function Rt(t,e,i){const s=Lt(t,1,.5);let n;for(e+i>1&&(n=1/(e+i),e*=n,i*=n),n=0;n<3;n++)s[n]*=1-e-i,s[n]+=e;return s}function It(t){const e=t.r/255,i=t.g/255,s=t.b/255,n=Math.max(e,i,s),o=Math.min(e,i,s),a=(n+o)/2;let r,l,h;return n!==o&&(h=n-o,l=a>.5?h/(2-n-o):h/(n+o),r=function(t,e,i,s,n){return t===n?(e-i)/s+(e<i?6:0):e===n?(i-t)/s+2:(t-e)/s+4}(e,i,s,h,n),r=60*r+.5),[0|r,l||0,a]}function zt(t,e,i,s){return(Array.isArray(e)?t(e[0],e[1],e[2]):t(e,i,s)).map(Mt)}function Ft(t,e,i){return zt(Lt,t,e,i)}function Vt(t){return(t%360+360)%360}function Bt(t){const e=Tt.exec(t);let i,s=255;if(!e)return;e[5]!==i&&(s=e[6]?vt(+e[5]):Mt(+e[5]));const n=Vt(+e[2]),o=+e[3]/100,a=+e[4]/100;return i="hwb"===e[1]?function(t,e,i){return zt(Rt,t,e,i)}(n,o,a):"hsv"===e[1]?function(t,e,i){return zt(Et,t,e,i)}(n,o,a):Ft(n,o,a),{r:i[0],g:i[1],b:i[2],a:s}}const Nt={x:"dark",Z:"light",Y:"re",X:"blu",W:"gr",V:"medium",U:"slate",A:"ee",T:"ol",S:"or",B:"ra",C:"lateg",D:"ights",R:"in",Q:"turquois",E:"hi",P:"ro",O:"al",N:"le",M:"de",L:"yello",F:"en",K:"ch",G:"arks",H:"ea",I:"ightg",J:"wh"},Wt={OiceXe:"f0f8ff",antiquewEte:"faebd7",aqua:"ffff",aquamarRe:"7fffd4",azuY:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"0",blanKedOmond:"ffebcd",Xe:"ff",XeviTet:"8a2be2",bPwn:"a52a2a",burlywood:"deb887",caMtXe:"5f9ea0",KartYuse:"7fff00",KocTate:"d2691e",cSO:"ff7f50",cSnflowerXe:"6495ed",cSnsilk:"fff8dc",crimson:"dc143c",cyan:"ffff",xXe:"8b",xcyan:"8b8b",xgTMnPd:"b8860b",xWay:"a9a9a9",xgYF:"6400",xgYy:"a9a9a9",xkhaki:"bdb76b",xmagFta:"8b008b",xTivegYF:"556b2f",xSange:"ff8c00",xScEd:"9932cc",xYd:"8b0000",xsOmon:"e9967a",xsHgYF:"8fbc8f",xUXe:"483d8b",xUWay:"2f4f4f",xUgYy:"2f4f4f",xQe:"ced1",xviTet:"9400d3",dAppRk:"ff1493",dApskyXe:"bfff",dimWay:"696969",dimgYy:"696969",dodgerXe:"1e90ff",fiYbrick:"b22222",flSOwEte:"fffaf0",foYstWAn:"228b22",fuKsia:"ff00ff",gaRsbSo:"dcdcdc",ghostwEte:"f8f8ff",gTd:"ffd700",gTMnPd:"daa520",Way:"808080",gYF:"8000",gYFLw:"adff2f",gYy:"808080",honeyMw:"f0fff0",hotpRk:"ff69b4",RdianYd:"cd5c5c",Rdigo:"4b0082",ivSy:"fffff0",khaki:"f0e68c",lavFMr:"e6e6fa",lavFMrXsh:"fff0f5",lawngYF:"7cfc00",NmoncEffon:"fffacd",ZXe:"add8e6",ZcSO:"f08080",Zcyan:"e0ffff",ZgTMnPdLw:"fafad2",ZWay:"d3d3d3",ZgYF:"90ee90",ZgYy:"d3d3d3",ZpRk:"ffb6c1",ZsOmon:"ffa07a",ZsHgYF:"20b2aa",ZskyXe:"87cefa",ZUWay:"778899",ZUgYy:"778899",ZstAlXe:"b0c4de",ZLw:"ffffe0",lime:"ff00",limegYF:"32cd32",lRF:"faf0e6",magFta:"ff00ff",maPon:"800000",VaquamarRe:"66cdaa",VXe:"cd",VScEd:"ba55d3",VpurpN:"9370db",VsHgYF:"3cb371",VUXe:"7b68ee",VsprRggYF:"fa9a",VQe:"48d1cc",VviTetYd:"c71585",midnightXe:"191970",mRtcYam:"f5fffa",mistyPse:"ffe4e1",moccasR:"ffe4b5",navajowEte:"ffdead",navy:"80",Tdlace:"fdf5e6",Tive:"808000",TivedBb:"6b8e23",Sange:"ffa500",SangeYd:"ff4500",ScEd:"da70d6",pOegTMnPd:"eee8aa",pOegYF:"98fb98",pOeQe:"afeeee",pOeviTetYd:"db7093",papayawEp:"ffefd5",pHKpuff:"ffdab9",peru:"cd853f",pRk:"ffc0cb",plum:"dda0dd",powMrXe:"b0e0e6",purpN:"800080",YbeccapurpN:"663399",Yd:"ff0000",Psybrown:"bc8f8f",PyOXe:"4169e1",saddNbPwn:"8b4513",sOmon:"fa8072",sandybPwn:"f4a460",sHgYF:"2e8b57",sHshell:"fff5ee",siFna:"a0522d",silver:"c0c0c0",skyXe:"87ceeb",UXe:"6a5acd",UWay:"708090",UgYy:"708090",snow:"fffafa",sprRggYF:"ff7f",stAlXe:"4682b4",tan:"d2b48c",teO:"8080",tEstN:"d8bfd8",tomato:"ff6347",Qe:"40e0d0",viTet:"ee82ee",JHt:"f5deb3",wEte:"ffffff",wEtesmoke:"f5f5f5",Lw:"ffff00",LwgYF:"9acd32"};let Ht;function jt(t){Ht||(Ht=function(){const t={},e=Object.keys(Wt),i=Object.keys(Nt);let s,n,o,a,r;for(s=0;s<e.length;s++){for(a=r=e[s],n=0;n<i.length;n++)o=i[n],r=r.replace(o,Nt[o]);o=parseInt(Wt[a],16),t[r]=[o>>16&255,o>>8&255,255&o]}return t}(),Ht.transparent=[0,0,0,0]);const e=Ht[t.toLowerCase()];return e&&{r:e[0],g:e[1],b:e[2],a:4===e.length?e[3]:255}}const $t=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;const Yt=t=>t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055,Ut=t=>t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4);function Xt(t,e,i){if(t){let s=It(t);s[e]=Math.max(0,Math.min(s[e]+s[e]*i,0===e?360:1)),Line truncated
//# sourceMappingURL=chart.umd.js.map
+1 -1
View File
@@ -1 +1 @@
@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(fonts/KaTeX_AMS-Regular.woff2) format("woff2"),url(fonts/KaTeX_AMS-Regular.woff) format("woff"),url(fonts/KaTeX_AMS-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Caligraphic-Bold.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Bold.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Caligraphic-Regular.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Regular.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Fraktur-Bold.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Bold.woff) format("woff"),url(fonts/KaTeX_Fraktur-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Fraktur-Regular.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Regular.woff) format("woff"),url(fonts/KaTeX_Fraktur-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Main-Bold.woff2) format("woff2"),url(fonts/KaTeX_Main-Bold.woff) format("woff"),url(fonts/KaTeX_Main-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Main-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Main-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Main-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Main-Italic.woff2) format("woff2"),url(fonts/KaTeX_Main-Italic.woff) format("woff"),url(fonts/KaTeX_Main-Italic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Main-Regular.woff2) format("woff2"),url(fonts/KaTeX_Main-Regular.woff) format("woff"),url(fonts/KaTeX_Main-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Math-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Math-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Math-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Math-Italic.woff2) format("woff2"),url(fonts/KaTeX_Math-Italic.woff) format("woff"),url(fonts/KaTeX_Math-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(fonts/KaTeX_SansSerif-Bold.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Bold.woff) format("woff"),url(fonts/KaTeX_SansSerif-Bold.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(fonts/KaTeX_SansSerif-Italic.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Italic.woff) format("woff"),url(fonts/KaTeX_SansSerif-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(fonts/KaTeX_SansSerif-Regular.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Regular.woff) format("woff"),url(fonts/KaTeX_SansSerif-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Script-Regular.woff2) format("woff2"),url(fonts/KaTeX_Script-Regular.woff) format("woff"),url(fonts/KaTeX_Script-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size1-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size1-Regular.woff) format("woff"),url(fonts/KaTeX_Size1-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size2-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size2-Regular.woff) format("woff"),url(fonts/KaTeX_Size2-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size3-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size3-Regular.woff) format("woff"),url(fonts/KaTeX_Size3-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size4-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size4-Regular.woff) format("woff"),url(fonts/KaTeX_Size4-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Typewriter-Regular.woff2) format("woff2"),url(fonts/KaTeX_Typewriter-Regular.woff) format("woff"),url(fonts/KaTeX_Typewriter-Regular.ttf) format("truetype")}.katex{text-rendering:auto;font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.2"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1pxLine truncated
@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(fonts/KaTeX_AMS-Regular.woff2) format("woff2"),url(fonts/KaTeX_AMS-Regular.woff) format("woff"),url(fonts/KaTeX_AMS-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Caligraphic-Bold.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Bold.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Caligraphic-Regular.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Regular.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Fraktur-Bold.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Bold.woff) format("woff"),url(fonts/KaTeX_Fraktur-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Fraktur-Regular.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Regular.woff) format("woff"),url(fonts/KaTeX_Fraktur-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Main-Bold.woff2) format("woff2"),url(fonts/KaTeX_Main-Bold.woff) format("woff"),url(fonts/KaTeX_Main-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Main-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Main-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Main-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Main-Italic.woff2) format("woff2"),url(fonts/KaTeX_Main-Italic.woff) format("woff"),url(fonts/KaTeX_Main-Italic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Main-Regular.woff2) format("woff2"),url(fonts/KaTeX_Main-Regular.woff) format("woff"),url(fonts/KaTeX_Main-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Math-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Math-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Math-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Math-Italic.woff2) format("woff2"),url(fonts/KaTeX_Math-Italic.woff) format("woff"),url(fonts/KaTeX_Math-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(fonts/KaTeX_SansSerif-Bold.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Bold.woff) format("woff"),url(fonts/KaTeX_SansSerif-Bold.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(fonts/KaTeX_SansSerif-Italic.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Italic.woff) format("woff"),url(fonts/KaTeX_SansSerif-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(fonts/KaTeX_SansSerif-Regular.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Regular.woff) format("woff"),url(fonts/KaTeX_SansSerif-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Script-Regular.woff2) format("woff2"),url(fonts/KaTeX_Script-Regular.woff) format("woff"),url(fonts/KaTeX_Script-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size1-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size1-Regular.woff) format("woff"),url(fonts/KaTeX_Size1-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size2-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size2-Regular.woff) format("woff"),url(fonts/KaTeX_Size2-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size3-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size3-Regular.woff) format("woff"),url(fonts/KaTeX_Size3-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size4-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size4-Regular.woff) format("woff"),url(fonts/KaTeX_Size4-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Typewriter-Regular.woff2) format("woff2"),url(fonts/KaTeX_Typewriter-Regular.woff) format("woff"),url(fonts/KaTeX_Typewriter-Regular.ttf) format("truetype")}.katex{text-rendering:auto;font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.4"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1pxLine truncated
+1 -1
View File
@@ -1 +1 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.katex=t():e.katex=t()}("undefined"!=typeof self?self:this,(function(){return function(){"use strict";var e={d:function(t,r){for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t={};e.d(t,{default:function(){return Qn}});var r=function e(t,r){this.position=void 0;var n,a="KaTeX parse error: "+t,i=r&&r.loc;if(i&&i.start<=i.end){var o=i.lexer.input;n=i.start;var s=i.end;n===o.length?a+=" at end of input: ":a+=" at position "+(n+1)+": ";var l=o.slice(n,s).replace(/[^]/g,"$&\u0332");a+=(n>15?"\u2026"+o.slice(n-15,n):o.slice(0,n))+l+(s+15<o.length?o.slice(s,s+15)+"\u2026":o.slice(s))}var h=new Error(a);return h.name="ParseError",h.__proto__=e.prototype,h.position=n,h};r.prototype.__proto__=Error.prototype;var n=r,a=/([A-Z])/g,i={"&":"&amp;",">":"&gt;","<":"&lt;",'"':"&quot;","'":"&#x27;"},o=/[&><"']/g;var s=function e(t){return"ordgroup"===t.type||"color"===t.type?1===t.body.length?e(t.body[0]):t:"font"===t.type?e(t.body):t},l={contains:function(e,t){return-1!==e.indexOf(t)},deflt:function(e,t){return void 0===e?t:e},escape:function(e){return String(e).replace(o,(function(e){return i[e]}))},hyphenate:function(e){return e.replace(a,"-$1").toLowerCase()},getBaseElem:s,isCharacterBox:function(e){var t=s(e);return"mathord"===t.type||"textord"===t.type||"atom"===t.type},protocolFromUrl:function(e){var t=/^\s*([^\\/#]*?)(?::|&#0*58|&#x0*3a)/i.exec(e);return null!=t?t[1]:"_relative"}},h={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format <type>"},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color <color>",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:function(e){return"#"+e}},macros:{type:"object",cli:"-m, --macro <def>",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:function(e,t){return t.push(e),t}},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:function(e){return Math.max(0,e)},cli:"--min-rule-thickness <size>",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:function(e){return Math.max(0,e)},cli:"-s, --max-size <n>",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:function(e){return Math.max(0,e)},cli:"-e, --max-expand <n>",cliProcessor:function(e){return"Infinity"===e?1/0:parseInt(e)}},globalGroup:{type:"boolean",cli:!1}};function c(e){if(e.default)return e.default;var t=e.type,r=Array.isArray(t)?t[0]:t;if("string"!=typeof r)return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}var m=function(){function e(e){for(var t in this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,thiLine truncated
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.katex=t():e.katex=t()}("undefined"!=typeof self?self:this,(function(){return function(){"use strict";var e={d:function(t,r){for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t={};e.d(t,{default:function(){return Qn}});var r=function e(t,r){this.position=void 0;var n,a="KaTeX parse error: "+t,i=r&&r.loc;if(i&&i.start<=i.end){var o=i.lexer.input;n=i.start;var s=i.end;n===o.length?a+=" at end of input: ":a+=" at position "+(n+1)+": ";var l=o.slice(n,s).replace(/[^]/g,"$&\u0332");a+=(n>15?"\u2026"+o.slice(n-15,n):o.slice(0,n))+l+(s+15<o.length?o.slice(s,s+15)+"\u2026":o.slice(s))}var h=new Error(a);return h.name="ParseError",h.__proto__=e.prototype,h.position=n,h};r.prototype.__proto__=Error.prototype;var n=r,a=/([A-Z])/g,i={"&":"&amp;",">":"&gt;","<":"&lt;",'"':"&quot;","'":"&#x27;"},o=/[&><"']/g;var s=function e(t){return"ordgroup"===t.type||"color"===t.type?1===t.body.length?e(t.body[0]):t:"font"===t.type?e(t.body):t},l={contains:function(e,t){return-1!==e.indexOf(t)},deflt:function(e,t){return void 0===e?t:e},escape:function(e){return String(e).replace(o,(function(e){return i[e]}))},hyphenate:function(e){return e.replace(a,"-$1").toLowerCase()},getBaseElem:s,isCharacterBox:function(e){var t=s(e);return"mathord"===t.type||"textord"===t.type||"atom"===t.type},protocolFromUrl:function(e){var t=/^\s*([^\\/#]*?)(?::|&#0*58|&#x0*3a)/i.exec(e);return null!=t?t[1]:"_relative"}},h={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format <type>"},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color <color>",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:function(e){return"#"+e}},macros:{type:"object",cli:"-m, --macro <def>",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:function(e,t){return t.push(e),t}},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:function(e){return Math.max(0,e)},cli:"--min-rule-thickness <size>",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:function(e){return Math.max(0,e)},cli:"-s, --max-size <n>",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:function(e){return Math.max(0,e)},cli:"-e, --max-expand <n>",cliProcessor:function(e){return"Infinity"===e?1/0:parseInt(e)}},globalGroup:{type:"boolean",cli:!1}};function c(e){if(e.default)return e.default;var t=e.type,r=Array.isArray(t)?t[0]:t;if("string"!=typeof r)return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}var m=function(){function e(e){for(var t in this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,thiLine truncated
+1284 -3
View File
File diff suppressed because it is too large. Load diff
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 519 KiB

+1 -1
View File
@@ -2,4 +2,4 @@
[module.hugoVersion]
extended = true
min = "0.87.0 "
max = "0.104.3"
max = "0.107.0"
+1 -1
View File
@@ -1,6 +1,6 @@
# -- Site Configuration --
# Refer to the theme docs for more details about each of these parameters.
# https://nunocoracao.github.io/blowfish/docs/getting-started/
# https://blowfish.page/docs/getting-started/
# theme = "blowfish"
# baseURL = "https://your_domain.com/"
+48 -2
View File
@@ -3,7 +3,7 @@
# customise the display of your website.
#
# Refer to the theme docs for more details about each of these parameters.
# https://nunocoracao.github.io/blowfish/docs/configuration/#theme-parameters
# https://blowfish.page/docs/configuration/#theme-parameters
colorScheme = "blowfish"
defaultAppearance = "light" # valid options: light or dark
@@ -15,7 +15,15 @@ enableCodeCopy = true
# mainSections = ["section1", "section2"]
# robots = ""
# disableImageOptimization = false
# defaultBackgroundImage = "IMAGE.jpg" # used as default for background images
[header]
layout = "basic" # valid options: basic, fixed
[footer]
# showMenu = true
showCopyright = true
showThemeAttribution = true
showAppearanceSwitcher = true
@@ -28,6 +36,9 @@ enableCodeCopy = true
showRecentItems = 5
showMoreLink = false
showMoreLinkDest = "/posts"
cardView = false
cardViewScreenWidth = false
layoutBackgroundBlur = false # only used when layout equals background
[article]
showDate = true
@@ -36,7 +47,9 @@ enableCodeCopy = true
showDateUpdated = false
showAuthor = true
showHero = true
heroStyle = "basic" # valid options: basic, big, background
heroStyle = "basic" # valid options: basic, big, background, thumbAndBackground
layoutBackgroundBlur = false # only used when heroStyle equals background or thumbAndBackground
layoutBackgroundHeaderSpace = true # only used when heroStyle equals background
showBreadcrumbs = true
showDraftLabel = true
showEdit = true
@@ -55,17 +68,43 @@ enableCodeCopy = true
sharingLinks = [ "linkedin", "twitter", "whatsapp", "pinterest", "reddit", "facebook", "email"]
[list]
#showHero = true
#heroStyle = "background" # valid options: basic, big, background, thumbAndBackground
#layoutBackgroundBlur = true # only used when heroStyle equals background or thumbAndBackground
#layoutBackgroundHeaderSpace = true # only used when heroStyle equals background
showBreadcrumbs = false
showSummary = false
#showViews = true
#showLikes = true
showTableOfContents = false
showCards = false
groupByYear = true
cardView = false
cardViewScreenWidth = false
[sitemap]
excludedKinds = []
[taxonomy]
showTermCount = true
#showHero = true
#heroStyle = "background" # valid options: basic, big, background, thumbAndBackground
showBreadcrumbs = false
#showViews = false
#showLikes = false
#showTableOfContents = true
#cardView = false
[term]
#showHero = true
#heroStyle = "background" # valid options: basic, big, background, thumbAndBackground
showBreadcrumbs = false
#showViews = false
#showLikes = false
#showTableOfContents = true
#groupByYear = false
#cardViewScreenWidth = false
#cardView = false
[firebase]
# apiKey = "XXXXXX"
@@ -80,6 +119,13 @@ enableCodeCopy = true
# site = "ABC12345"
# domain = "llama.yoursite.com"
[buymeacoffee]
# identifier = ""
# globalWidget = true
# globalWidgetMessage = "Hello"
# globalWidgetColor = "#FFDD00"
# globalWidgetPosition = "Right"
[verification]
# google = ""
# bing = ""
+31 -29
View File
@@ -1,32 +1,34 @@
{
"email": {
"icon": "email",
"title": "sharing.email",
"url": "mailto:?body=%s&subject=%s"
},
"facebook": {
"icon": "facebook",
"title": "sharing.facebook",
"url": "https://www.facebook.com/sharer/sharer.php?u=%s&quote=%s"
},
"linkedin": {
"icon": "linkedin",
"title": "sharing.linkedin",
"url": "https://www.linkedin.com/shareArticle?mini=true&url=%s&title=%s"
},
"pinterest": {
"icon": "pinterest",
"title": "sharing.pinterest",
"url": "https://pinterest.com/pin/create/bookmarklet/?url=%s&description=%s"
},
"reddit": {
"icon": "reddit",
"title": "sharing.reddit",
"url": "https://reddit.com/submit/?url=%s&resubmit=true&title=%s"
},
"twitter": {
"icon": "twitter",
"title": "sharing.twitter",
"url": "https://twitter.com/intent/tweet/?url=%s&text=%s"
"links": {
"email": {
"icon": "email",
"title": "sharing.email",
"url": "mailto:?body=%s&subject=%s"
},
"facebook": {
"icon": "facebook",
"title": "sharing.facebook",
"url": "https://www.facebook.com/sharer/sharer.php?u=%s&quote=%s"
},
"linkedin": {
"icon": "linkedin",
"title": "sharing.linkedin",
"url": "https://www.linkedin.com/shareArticle?mini=true&url=%s&title=%s"
},
"pinterest": {
"icon": "pinterest",
"title": "sharing.pinterest",
"url": "https://pinterest.com/pin/create/bookmarklet/?url=%s&description=%s"
},
"reddit": {
"icon": "reddit",
"title": "sharing.reddit",
"url": "https://reddit.com/submit/?url=%s&resubmit=true&title=%s"
},
"twitter": {
"icon": "twitter",
"title": "sharing.twitter",
"url": "https://twitter.com/intent/tweet/?url=%s&text=%s"
}
}
}
File renamed without changes.
+43 -2
View File
@@ -2,8 +2,8 @@ var layouts = [
"background",
"hero",
"profile",
"card",
"page"
"page",
"card"
]
var currentLayout = 0
@@ -33,3 +33,44 @@ window.addEventListener("DOMContentLoaded", (event) => {
})
);
});
var list_config = [
"CardViewScreenWidth",
"CardViewProse",
"NormalView"
]
var titles = {
"CardViewProse" : "card view with constrained width",
"CardViewScreenWidth" : "card view with full width",
"NormalView" : "standard list view"
}
var currentConfig = 0
function switchList() {
var old = currentConfig
currentConfig = currentConfig == list_config.length - 1 ? 0 : currentConfig + 1
var oldDiv = document.getElementById(list_config[old])
var currentDiv = document.getElementById(list_config[currentConfig])
const configCode = document.querySelectorAll("code[id=config]");
currentDiv.style.display = "block";
oldDiv.style.display = "none";
configCode.forEach(function (el) {
el.innerText = titles[list_config[currentConfig]];
});
}
window.addEventListener("DOMContentLoaded", (event) => {
document.querySelectorAll("#switch-config-button").forEach((button) =>
button.addEventListener("click", function (e) {
e.preventDefault();
switchList();
})
);
});
+2 -2
View File
@@ -1,9 +1,9 @@
# -- Site Configuration --
# Refer to the theme docs for more details about each of these parameters.
# https://nunocoracao.github.io/blowfish/docs/getting-started/
# https://blowfish.page/docs/getting-started/
theme = "blowfish"
baseURL = "https://nunocoracao.github.io/blowfish/"
baseURL = "https://nunocoracao.github.io/blowfish"
defaultContentLanguage = "en"
enableRobotsTXT = true
@@ -19,5 +19,6 @@ dateFormat = "2 January 2006"
bio = "A powerful, lightweight theme for Hugo built with Tailwind CSS."
links = [
{ twitter = "https://twitter.com/burufugu" },
{ mastodon = "https://masto.ai/@blowfish" },
{ github = "https://github.com/nunocoracao/blowfish" },
]
+27 -6
View File
@@ -21,21 +21,42 @@
weight = 20
[[main]]
name = "Users"
pageRef = "users"
name = "Showcase"
pageRef = "examples"
weight = 30
[[main]]
identifier = "github"
pre = "github"
url = "https://github.com/nunocoracao/blowfish"
name = "Users"
pageRef = "users"
weight = 40
[[main]]
name = "Merch"
url = "http://tee.pub/lic/qwSlWVBL5zc"
weight = 50
#[[main]]
# name = "Test"
# pageRef = "pagTest"
# weight = 1000
[[main]]
identifier = "twitter"
pre = "twitter"
url = "https://twitter.com/burufugu"
weight = 50
weight = 60
[[main]]
identifier = "mastodon"
pre = "mastodon"
url = "https://masto.ai/@blowfish"
weight = 70
[[main]]
identifier = "github"
pre = "github"
url = "https://github.com/nunocoracao/blowfish"
weight = 80
# -- Footer Menu --
+52 -7
View File
@@ -3,7 +3,7 @@
# customise the display of your website.
#
# Refer to the theme docs for more details about each of these parameters.
# https://nunocoracao.github.io/blowfish/docs/configuration/#theme-parameters
# https://blowfish.page/docs/configuration/#theme-parameters
colorScheme = "blowfish"
defaultAppearance = "dark" # valid options: light or dark
@@ -15,7 +15,15 @@ enableCodeCopy = true
mainSections = ["docs"]
# robots = ""
disableImageOptimization = true
defaultBackgroundImage = "/img/iceland.jpg"
[header]
layout = "fixed" # valid options: basic, fixed
[footer]
showMenu = true
showCopyright = true
showThemeAttribution = true
showAppearanceSwitcher = true
@@ -23,11 +31,14 @@ mainSections = ["docs"]
[homepage]
layout = "custom" # valid options: page, profile, hero, card, background, custom
homepageImage = "iceland.jpg" # used in: hero, and card
showRecent = true
showRecentItems = 5
homepageImage = "/img/iceland.jpg" # used in: hero, and card
showRecent = false
showRecentItems = 10
showMoreLink = true
showMoreLinkDest = "docs"
cardView = true
cardViewScreenWidth = false
layoutBackgroundBlur = true # only used when layout equals background
[article]
showDate = false
@@ -36,7 +47,8 @@ mainSections = ["docs"]
showDateUpdated = false
showAuthor = true
showHero = true
heroStyle = "background" # valid options: basic, big, background
heroStyle = "background" # valid options: basic, big, background, thumbAndBackground
layoutBackgroundBlur = true # only used when heroStyle equals background
showBreadcrumbs = true
showDraftLabel = true
showEdit = true
@@ -55,17 +67,43 @@ mainSections = ["docs"]
sharingLinks = [ "linkedin", "twitter", "whatsapp", "pinterest", "reddit", "facebook", "email"]
[list]
showHero = true
heroStyle = "background" # valid options: basic, big, background, thumbAndBackground
layoutBackgroundBlur = true # only used when heroStyle equals background
layoutBackgroundHeaderSpace = false
showBreadcrumbs = false
showSummary = true
showTableOfContents = false
showSummary = false
showViews = true
showLikes = true
showTableOfContents = true
showCards = true
groupByYear = false
cardView = true
cardViewScreenWidth = false
[sitemap]
excludedKinds = ["taxonomy","term"]
[taxonomy]
showTermCount = true
showHero = true
heroStyle = "background" # valid options: basic, big, background, thumbAndBackground
showBreadcrumbs = false
showViews = true
showLikes = true
showTableOfContents = true
[term]
showHero = true
heroStyle = "background" # valid options: basic, big, background, thumbAndBackground
showBreadcrumbs = false
showViews = true
showLikes = true
showTableOfContents = true
groupByYear = false
cardView = false
cardViewScreenWidth = false
[firebase]
apiKey = "AIzaSyB5tqlqDky77Vb4Tc4apiHV4hRZI18KGiY"
@@ -80,6 +118,13 @@ mainSections = ["docs"]
# site = "ABC12345"
# domain = "llama.yoursite.com"
[buymeacoffee]
identifier = "nunocoracao"
globalWidget = true
globalWidgetMessage = ""
globalWidgetColor = "#FFDD00"
globalWidgetPosition = "Right"
[verification]
# google = ""
# bing = ""
@@ -1,14 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>defaultPathExtensions</key>
<string>md</string>
<key>enforceFencedCodeBlocks</key>
<false/>
<key>sheetFormat</key>
<string>foreign</string>
<key>useInlineLinks</key>
<false/>
</dict>
</plist>
+7 -1
View File
@@ -3,6 +3,12 @@ title: "Welcome to Blowfish! :tada:"
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.
<div class="flex px-4 py-2 mb-8 text-base rounded-md bg-primary-100 dark:bg-primary-900">
@@ -20,4 +26,4 @@ This is a demo site built entirely using Blowfish. It also contains a complete s
</span>
</div>
Explore the [sample pages]({{< ref "samples" >}}) to get a feel for what Blowfish can do. If you like what you see, check out the project on <a target="_blank" href="https://github.com/nunocoracao/blowfish">Github</a> or read the [Installation guide]({{< ref "docs/installation" >}}) to get started.
Explore the [sample pages]({{< ref "samples" >}}) to get a feel for what Blowfish can do. If you like what you see, check out the project on <a target="_blank" href="https://github.com/nunocoracao/blowfish">Github</a> or read the [Installation guide]({{< ref "docs/installation" >}}) to get started.
-2
View File
@@ -12,8 +12,6 @@ cascade:
Simple, yet powerful. Learn how to use Blowfish and its features.
{{< /lead >}}
![Featured Blowfish image](featured.png)
This section contains everything you need to know about Blowfish. If you're new, check out the [Installation]({{< ref "docs/installation" >}}) guide to begin or visit the [Samples]({{< ref "samples" >}}) section to see what Blowfish can do.
---
@@ -31,6 +31,24 @@ For example, if you wanted to override the main article template in Blowfish, yo
As long as you follow this simple practice, you will always be able to update the theme (or test different theme versions) without worrying that you will lose any of your custom changes.
## Change image optimization settings
Hugo has various builtin methods to resize, crop and optimize images.
As an example - in `layouts/partials/article-link-card.html`, you have the following code:
```go
{{ with .Fill "600x600" }}
<div class="w-full thumbnail_card nozoom" style="background-image:url({{ .RelPermalink }});"></div>
{{ end }}
```
The default behavior of Hugo here is to use Smartcrop to dynamically set the anchor point (crop placement) on the image and resize it to fill 600x600px.
It is worth noting here that default image configurations such as [anchor point](https://gohugo.io/content-management/image-processing/#anchor) can also be set in your [site configuration](https://gohugo.io/content-management/image-processing/#processing-options) as well as in the template itself.
See the [Hugo docs on image processing](https://gohugo.io/content-management/image-processing/#image-processing-methods) for more info.
## Colour schemes
Blowfish ships with a number of colour schemes out of the box. To change the basic colour scheme, you can set the `colorScheme` theme parameter. Refer to the [Getting Started]({{< ref "getting-started#colour-schemes" >}}) section to learn more about the built-in schemes.
@@ -59,7 +77,7 @@ The `custom.css` file will be minified by Hugo and loaded automatically after al
### Using additional fonts
Blowfish allows you to easily change the font for your site. After creating a `custom.css` file in your project's `assets/css/` folder, place you font file inside a `fonts` folder withing the `static` root folder.
Blowfish allows you to easily change the font for your site. After creating a `custom.css` file in your project's `assets/css/` folder, place you font file inside a `fonts` folder withing the `static` root folder.
```shell
.
@@ -86,8 +104,6 @@ html {
}
```
### Adjusting the font size
Changing the font size of your website is one example of overriding the default stylesheet. Blowfish makes this simple as it uses scaled font sizes throughout the theme which are derived from the base HTML font size. By default, Tailwind sets the default size to `12pt`, but it can be changed to whatever value you prefer.
File renamed without changes.
+154 -112
View File
@@ -30,17 +30,17 @@ The site configuration is managed through the `config/_default/config.toml` file
Note that the variable names provided in this table use dot notation to simplify the TOML data structure (ie. `outputs.home` refers to `[outputs] home`).
<!-- prettier-ignore-start -->
|Name|Default|Description|
|---|---|---|
|`theme`|`"blowfish"`|When using Hugo Modules this config value should be removed. For all other installation types, this must be set to `blowfish` for the theme to function.|
|`baseURL`|_Not set_|The URL to the root of the website.|
|`defaultContentLanguage`|`"en"`|This value determines the default language of theme components and content. Refer to the [language and i18n](#language-and-i18n) section below for supported language codes.|
|`enableRobotsTXT`|`true`|When enabled, a `robots.txt` file will be created in the site root that allows search engines to crawl the entire site. If you prefer to provide your own pre-made `robots.txt`, set to `false` and place your file in the `static` directory. For complete control, you may provide a [custom layout]({{< ref "content-examples#custom-layouts" >}}) to generate this file.|
|`paginate`|`10`|The number of articles listed on each page of the article listing.|
|`summaryLength`|`0`|The number of words that are used to generate the article summary when one is not provided in the [front matter]({{< ref "front-matter" >}}). A value of `0` will use the first sentence. This value has no effect when summaries are hidden.|
|`outputs.home`|`["HTML", "RSS", "JSON"]`|The output formats that are generated for the site. Blowfish requires HTML, RSS and JSON for all theme components to work correctly.|
|`permalinks`|_Not set_|Refer to the [Hugo docs](https://gohugo.io/content-management/urls/#permalinks) for permalink configuration.|
|`taxonomies`|_Not set_|Refer to the [Organising content]({{< ref "getting-started#organising-content" >}}) section for taxonomy configuration.|
| Name | Default | Description |
| ------------------------ | ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `theme` | `"blowfish"` | When using Hugo Modules this config value should be removed. For all other installation types, this must be set to `blowfish` for the theme to function. |
| `baseURL` | _Not set_ | The URL to the root of the website. |
| `defaultContentLanguage` | `"en"` | This value determines the default language of theme components and content. Refer to the [language and i18n](#language-and-i18n) section below for supported language codes. |
| `enableRobotsTXT` | `true` | When enabled, a `robots.txt` file will be created in the site root that allows search engines to crawl the entire site. If you prefer to provide your own pre-made `robots.txt`, set to `false` and place your file in the `static` directory. For complete control, you may provide a [custom layout]({{< ref "content-examples#custom-layouts" >}}) to generate this file. |
| `paginate` | `10` | The number of articles listed on each page of the article listing. |
| `summaryLength` | `0` | The number of words that are used to generate the article summary when one is not provided in the [front matter]({{< ref "front-matter" >}}). A value of `0` will use the first sentence. This value has no effect when summaries are hidden. |
| `outputs.home` | `["HTML", "RSS", "JSON"]` | The output formats that are generated for the site. Blowfish requires HTML, RSS and JSON for all theme components to work correctly. |
| `permalinks` | _Not set_ | Refer to the [Hugo docs](https://gohugo.io/content-management/urls/#permalinks) for permalink configuration. |
| `taxonomies` | _Not set_ | Refer to the [Organising content]({{< ref "getting-started#organising-content" >}}) section for taxonomy configuration. |
<!-- prettier-ignore-end -->
## Thumbnails
@@ -55,26 +55,28 @@ Blowfish is optimised for full multilingual websites and theme assets are transl
The theme currently supports the following languages by default:
| Language | Code |
| -------------------------------------- | ------- |
| :gb: English | `en` |
| :bangladesh: Bengali | `bn` |
| :cn: Simplified Chinese (China) | `zh-cn` |
| :taiwan: Traditional Chinese (Taiwan) | `zh-tw` |
| :finland: Finnish | `fi` |
| :fr: French | `fr` |
| :de: German | `de` |
| :israel: Hebrew | `he` |
| :hungary: Hungarian | `hu` |
| :it: Italian | `it` |
| :jp: Japanese | `ja` |
| :brazil: Portuguese (Brazil) | `pt-br` |
| :portugal: Portuguese (Portugal) | `pt-pt` |
| :poland: Polish | `pl` |
| :romania: Romanian | `ro` |
| :es: Spanish (Spain) | `es` |
| :tr: Turkish | `tr` |
| 🇭🇷 Hrvatski | `hr` |
| Language | Code |
| ------------------------------------- | ------- |
| :gb: English | `en` |
| :bangladesh: Bengali | `bn` |
| :cn: Simplified Chinese (China) | `zh-cn` |
| :taiwan: Traditional Chinese (Taiwan) | `zh-tw` |
| :finland: Finnish | `fi` |
| :fr: French | `fr` |
| :de: German | `de` |
| :israel: Hebrew | `he` |
| :hungary: Hungarian | `hu` |
| :it: Italian | `it` |
| :jp: Japanese | `ja` |
| :brazil: Portuguese (Brazil) | `pt-br` |
| :portugal: Portuguese (Portugal) | `pt-pt` |
| :poland: Polish | `pl` |
| :romania: Romanian | `ro` |
| :es: Spanish (Spain) | `es` |
| :tr: Turkish | `tr` |
| 🇭🇷 Croatian | `hr` |
| 🇮🇩 Indonesian | `id` |
| 🇨🇿 Czech | `cs` |
The default translations can be overridden by creating a custom file in `i18n/[code].yaml` that contains the translation strings. You can also use this method to add new languages. If you'd like to share a new translation with the community, please [open a pull request](https://github.com/nunocoracao/blowfish/pulls).
@@ -89,23 +91,23 @@ The default file can be used as a template to create additional languages, or re
{{< /alert >}}
<!-- prettier-ignore-start -->
|Name|Default|Description|
|---|---|---|
|`languageCode`|`"en"`|The Hugo language code for this file. It can be a top-level language (ie. `en`) or a sub-variant (ie. `en-au`) and should match the language code in the filename. Hugo expects this value to always be in lowercase. For proper HTML compliance, set the `isoCode` parameter which is case-sensitive.|
|`languageName`|`"English"`|The name of the language.|
|`displayName`|`"EN"`|The name used when the language appears on the website.|
|`isoCode`|`"en"`|The ISO language code for HTML metadata purposes. It can be a top-level language (ie. `en`) or a sub-variant (ie. `en-AU`).|
|`weight`|`1`|The weight determines the order of languages when building multilingual sites.|
|`rtl`|`false`|Whether or not this is a RTL language. Set to `true` to reflow content from right-to-left. Blowfish fully supports using RTL and LTR languages at the same time and will dynamically adjust to both.|
|`dateFormat`|`"2 January 2006"`|How dates are formatted in this language. Refer to the [Hugo docs](https://gohugo.io/functions/format/#gos-layout-string) for acceptable formats.|
|`title`|`"Blowfish"`|The title of the website. This will be displayed in the site header and footer.|
|`description`|_Not set_|The website description. This will be used in the site metadata.|
|`copyright`|_Not set_|A Markdown string containing the copyright message to be displayed in the site footer. If none is provided, Blowfish will automatically generate a copyright string using the site `title`.|
|`author.name`|_Not set_|The author's name. This will be displayed in article footers, and on the homepage when the profile layout is used.|
|`author.image`|_Not set_|Path to the image file of the author. The image should be a 1:1 aspect ratio and placed in the site's `assets/` folder.|
|`author.headline`|_Not set_|A Markdown string containing the author's headline. It will be displayed on the profile homepage under the author's name.|
|`author.bio`|_Not set_|A Markdown string containing the author's bio. It will be displayed in article footers.|
|`author.links`|_Not set_|The links to display alongside the author's details. The config file contains example links which can simply be uncommented to enable. The order that the links are displayed is determined by the order they appear in the array. Custom links can be added by providing corresponding SVG icon assets in `assets/icons/`.|
| Name | Default | Description |
| ----------------- | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `languageCode` | `"en"` | The Hugo language code for this file. It can be a top-level language (ie. `en`) or a sub-variant (ie. `en-au`) and should match the language code in the filename. Hugo expects this value to always be in lowercase. For proper HTML compliance, set the `isoCode` parameter which is case-sensitive. |
| `languageName` | `"English"` | The name of the language. |
| `displayName` | `"EN"` | The name used when the language appears on the website. |
| `isoCode` | `"en"` | The ISO language code for HTML metadata purposes. It can be a top-level language (ie. `en`) or a sub-variant (ie. `en-AU`). |
| `weight` | `1` | The weight determines the order of languages when building multilingual sites. |
| `rtl` | `false` | Whether or not this is a RTL language. Set to `true` to reflow content from right-to-left. Blowfish fully supports using RTL and LTR languages at the same time and will dynamically adjust to both. |
| `dateFormat` | `"2 January 2006"` | How dates are formatted in this language. Refer to the [Hugo docs](https://gohugo.io/functions/format/#gos-layout-string) for acceptable formats. |
| `title` | `"Blowfish"` | The title of the website. This will be displayed in the site header and footer. |
| `description` | _Not set_ | The website description. This will be used in the site metadata. |
| `copyright` | _Not set_ | A Markdown string containing the copyright message to be displayed in the site footer. If none is provided, Blowfish will automatically generate a copyright string using the site `title`. |
| `author.name` | _Not set_ | The author's name. This will be displayed in article footers, and on the homepage when the profile layout is used. |
| `author.image` | _Not set_ | Path to the image file of the author. The image should be a 1:1 aspect ratio and placed in the site's `assets/` folder. |
| `author.headline` | _Not set_ | A Markdown string containing the author's headline. It will be displayed on the profile homepage under the author's name. |
| `author.bio` | _Not set_ | A Markdown string containing the author's bio. It will be displayed in article footers. |
| `author.links` | _Not set_ | The links to display alongside the author's details. The config file contains example links which can simply be uncommented to enable. The order that the links are displayed is determined by the order they appear in the array. Custom links can be added by providing corresponding SVG icon assets in `assets/icons/`. |
<!-- prettier-ignore-end -->
### Menus
@@ -123,73 +125,113 @@ Blowfish provides a large number of configuration parameters that control how th
Many of the article defaults here can be overridden on a per article basis by specifying it in the front matter. Refer to the [Front Matter]({{< ref "front-matter" >}}) section for further details.
<!-- prettier-ignore-start -->
|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.|
|`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`.|
|`enableSearch`|`false`|Whether site search is enabled. Set to `true` to enable search functionality. Note that the search feature depends on the `outputs.home` setting in the [site configuration](#site-configuration) being set correctly.|
|`enableCodeCopy`|`false`|Whether copy-to-clipboard buttons are enabled for `<code>` blocks. The `highlight.noClasses` parameter must be set to `false` for code copy to function correctly. Read more about [other configuration files](#other-configuration-files) below.|
|`logo`|_Not set_|The relative path to the site logo file within the `assets/` folder. The logo file should be provided at 2x resolution and supports any image dimensions.|
|`mainSections`|_Not set_|The sections that should be displayed in the recent articles list. If not provided the section with the greatest number of articles is used.|
|`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.|
|`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.showThemeAttribution`|`true`|Whether or not to show the "powered by" theme attribution in the site footer. If you choose to disable this message, please consider attributing the theme somewhere else on your site (for example, on your about page).|
|`footer.showAppearanceSwitcher`|`false`|Whether or not to show the appearance switcher in the site footer. The browser's local storage is used to persist the visitor's preference.|
|`footer.showScrollToTop`|`true`|When set to `true` the scroll to top arrow is displayed.|
|`homepage.layout`|`"profile"`|The layout of the homepage. Valid values are `page`, `profile`, `hero`, `card`, `background`, or `custom`. When set to `custom`, you must provide your own layout by creating a `/layouts/partials/home/custom.html` file. Refer to the [Homepage Layout]({{< ref "homepage-layout" >}}) section for more details.|
|`homepage.homepageImage`|_Not set_|Image to be used in `hero` and `card` layouts. Refer to the [Homepage Layout]({{< ref "homepage-layout" >}}) section for more details.|
|`homepage.showRecent`|`false`|Whether or not to display the recent articles list on the homepage.|
|`homepage.showRecentItems`|5|How many articles to display if showRecent is true. If variable is set to 0 or if it isn't defined the system will default to 5 articles.|
|`homepage.showMoreLink`|'false'|Wether or not to display a show more link at the end of your posts that takes the user to a predefined place.|
|`homepage.showMoreLinkDest`|'/posts'|The destination of the show more button.|
|`article.showDate`|`true`|Whether or not article dates are displayed.|
|`article.showViews`|`false`|Whether or not article views are displayed. This requires firebase integrations to be enabled, look below.|
|`article.showLikes`|`false`|Whether or not article likes are displayed. This requires firebase integrations to be enabled, look below.|
|`article.showDateUpdated`|`false`|Whether or not the dates articles were updated are displayed.|
|`article.showAuthor`|`true`|Whether or not the author box is displayed in the article footer.|
|`article.showHero`|`true`|Whether the thumbnail image will be shown as a hero image within each article page.|
|`heroStyle`|`basic`|Style to display the hero image, valid options are: `basic`, `big`, `background`.|
|`article.showBreadcrumbs`|`false`|Whether or not breadcrumbs are displayed in the article header.|
|`article.showDraftLabel`|`true`|Whether or not the draft indicator is shown next to articles when site is built with `--buildDrafts`.|
|`article.showEdit`|`false`|Whether or not the link to edit the article content should be displayed.|
|`article.editURL`|_Not set_|When `article.showEdit` is active, the URL for the edit link.|
|`article.editAppendPath`|`true`|When `article.showEdit` is active, whether or not the path to the current article should be appended to the URL set at `article.editURL`.|
|`article.seriesOpened`|`false`|Whether or not the series module will be displayed open by default or not.|
|`article.showHeadingAnchors`|`true`|Whether or not heading anchor links are displayed alongside headings within articles.|
|`article.showPagination`|`true`|Whether or not the next/previous article links are displayed in the article footer.|
|`article.invertPagination`|`false`|Whether or not to flip the direction of the next/previous article links.|
|`article.showReadingTime`|`true`|Whether or not article reading times are displayed.|
|`article.showTableOfContents`|`false`|Whether or not the table of contents is displayed on articles.|
|`article.showTaxonomies`|`false`|Whether or not the taxonomies related to this article are displayed.|
|`article.showAuthorsBadges`|`false`|Whether the `authors` taxonomies are are displayed in the article or list header. This requires the setup of `multiple authors` and the `authors` taxonomy. Check [this page]({{< ref "multi-author" >}}) for more details on how to configure that feature.|
|`article.showWordCount`|`false`|Whether or not article word counts are displayed.|
|`article.showComments`|`false`|Whether or not the [comments partial]({{< ref "partials#comments" >}}) is included after the article footer.|
|`article.sharingLinks`|_Not set_|Which sharing links to display at the end of each article. When not provided, or set to `false` no links will be displayed.|
|`list.showBreadcrumbs`|`false`|Whether or not breadcrumbs are displayed in the header on list pages.|
|`list.showTableOfContents`|`false`|Whether or not the table of contents is displayed on list pages.|
|`list.showSummary`|`false`|Whether or not article summaries are displayed on list pages. If a summary is not provided in the [front matter]({{< ref "front-matter" >}}), one will be auto generated using the `summaryLength` parameter in the [site configuration](#site-configuration).|
|`list.showCards`|`false`|Whether or not each article is displayed as a card or as simple inline text.|
|`list.groupByYear`|`true`|Whether or not articles are grouped by year on list pages.|
|`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.|
|`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.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.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.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.domain`|_Not set_|If using a custom domain with Fathom Analytics, provide it here to serve `script.js` from the custom domain.|
|`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.pinterest`|_Not set_|The site verification string provided by Pinterest to be included in the site metadata.|
|`verification.yandex`|_Not set_|The site verification string provided by Yandex to be included in the site metadata.|
| 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. |
| `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`. |
| `enableSearch` | `false` | Whether site search is enabled. Set to `true` to enable search functionality. Note that the search feature depends on the `outputs.home` setting in the [site configuration](#site-configuration) being set correctly. |
| `enableCodeCopy` | `false` | Whether copy-to-clipboard buttons are enabled for `<code>` blocks. The `highlight.noClasses` parameter must be set to `false` for code copy to function correctly. Read more about [other configuration files](#other-configuration-files) below. |
| `logo` | _Not set_ | The relative path to the site logo file within the `assets/` folder. The logo file should be provided at 2x resolution and supports any image dimensions. |
| `mainSections` | _Not set_ | The sections that should be displayed in the recent articles list. If not provided the section with the greatest number of articles is used. |
| `showViews` | _Not set_ | Whether or not articles and list views 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. |
| `disableImageZoom` | `false` | Disables image zoom feature across all the images in the site. |
| `disableImageOptimization` | `false` | Disables image resize and optimization features 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`. |
| `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.showThemeAttribution` | `true` | Whether or not to show the "powered by" theme attribution in the site footer. If you choose to disable this message, please consider attributing the theme somewhere else on your site (for example, on your about page). |
| `footer.showAppearanceSwitcher` | `false` | Whether or not to show the appearance switcher in the site footer. The browser's local storage is used to persist the visitor's preference. |
| `footer.showScrollToTop` | `true` | When set to `true` the scroll to top arrow is displayed. |
| `homepage.layout` | `"profile"` | The layout of the homepage. Valid values are `page`, `profile`, `hero`, `card`, `background`, or `custom`. When set to `custom`, you must provide your own layout by creating a `/layouts/partials/home/custom.html` file. Refer to the [Homepage Layout]({{< ref "homepage-layout" >}}) section for more details. |
| `homepage.homepageImage` | _Not set_ | Image to be used in `hero` and `card` layouts. Refer to the [Homepage Layout]({{< ref "homepage-layout" >}}) section for more details. |
| `homepage.showRecent` | `false` | Whether or not to display the recent articles list on the homepage. |
| `homepage.showRecentItems` | 5 | How many articles to display if showRecent is true. If variable is set to 0 or if it isn't defined the system will default to 5 articles. |
| `homepage.showMoreLink` | 'false' | Wether or not to display a show more link at the end of your posts that takes the user to a predefined place. |
| `homepage.showMoreLinkDest` | '/posts' | The destination of the show more button. |
| `homepage.cardView` | `false` | Display recent articles as a gallery of cards. |
| `homepage.cardViewScreenWidth` | `false` | Enhance the width of the recent articles card gallery to take the full width available. |
| `homepage.layoutBackgroundBlur` | `false` | Makes the background image in the homepage layout blur with the scroll |
| `article.showDate` | `true` | Whether or not article dates are displayed. |
| `article.showViews` | `false` | Whether or not article views are displayed. This requires firebase integrations to be enabled, look below. |
| `article.showLikes` | `false` | Whether or not article likes are displayed. This requires firebase integrations to be enabled, look below. |
| `article.showDateUpdated` | `false` | Whether or not the dates articles were updated are displayed. |
| `article.showAuthor` | `true` | Whether or not the author box is displayed in the article footer. |
| `article.showHero` | `false` | Whether the thumbnail image will be shown as a hero image within each article page. |
| `article.heroStyle` | _Not set_ | Style to display the hero image, valid options are: `basic`, `big`, `background`, `thumbAndBackground`. |
| `article.layoutBackgroundBlur` | `true` | Makes the background image in the background article heroStyle blur with the scroll |
| `article.layoutBackgroundHeaderSpace` | `true` | Add space between the header and the body. |
| `article.showBreadcrumbs` | `false` | Whether or not breadcrumbs are displayed in the article header. |
| `article.showDraftLabel` | `true` | Whether or not the draft indicator is shown next to articles when site is built with `--buildDrafts`. |
| `article.showEdit` | `false` | Whether or not the link to edit the article content should be displayed. |
| `article.editURL` | _Not set_ | When `article.showEdit` is active, the URL for the edit link. |
| `article.editAppendPath` | `true` | When `article.showEdit` is active, whether or not the path to the current article should be appended to the URL set at `article.editURL`. |
| `article.seriesOpened` | `false` | Whether or not the series module will be displayed open by default or not. |
| `article.showHeadingAnchors` | `true` | Whether or not heading anchor links are displayed alongside headings within articles. |
| `article.showPagination` | `true` | Whether or not the next/previous article links are displayed in the article footer. |
| `article.invertPagination` | `false` | Whether or not to flip the direction of the next/previous article links. |
| `article.showReadingTime` | `true` | Whether or not article reading times are displayed. |
| `article.showTableOfContents` | `false` | Whether or not the table of contents is displayed on articles. |
| `article.showTaxonomies` | `false` | Whether or not the taxonomies related to this article are displayed. |
| `article.showAuthorsBadges` | `false` | Whether the `authors` taxonomies are are displayed in the article or list header. This requires the setup of `multiple authors` and the `authors` taxonomy. Check [this page]({{< ref "multi-author" >}}) for more details on how to configure that feature. |
| `article.showWordCount` | `false` | Whether or not article word counts are displayed. |
| `article.showComments` | `false` | Whether or not the [comments partial]({{< ref "partials#comments" >}}) is included after the article footer. |
| `article.sharingLinks` | _Not set_ | Which sharing links to display at the end of each article. When not provided, or set to `false` no links will be displayed. |
| `list.showHero` | `false` | Whether the thumbnail image will be shown as a hero image within each list page. |
| `list.heroStyle` | _Not set_ | Style to display the hero image, valid options are: `basic`, `big`, `background`, `thumbAndBackground`. |
| `list.showBreadcrumbs` | `false` | Whether or not breadcrumbs are displayed in the header on list pages. |
| `list.layoutBackgroundBlur` | `true` | Makes the background image in the background list heroStyle blur with the scroll |
| `list.layoutBackgroundHeaderSpace` | `true` | Add space between the header and the body. |
| `list.showTableOfContents` | `false` | Whether or not the table of contents is displayed on list pages. |
| `list.showSummary` | `false` | Whether or not article summaries are displayed on list pages. If a summary is not provided in the [front matter]({{< ref "front-matter" >}}), one will be auto generated using the `summaryLength` parameter in the [site configuration](#site-configuration). |
| `list.showViews` | `false` | Whether or not list views are displayed. This requires firebase integrations to be enabled, look below. |
| `list.showLikes` | `false` | Whether or not list likes are displayed. This requires firebase integrations to be enabled, look below. |
| `list.showCards` | `false` | Whether or not each article is displayed as a card or as simple inline text. |
| `list.groupByYear` | `true` | Whether or not articles are grouped by year on list pages. |
| `list.cardView` | `false` | Display lists as a gallery of cards. |
| `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. |
| `taxonomy.showTermCount` | `true` | Whether or not the number of articles within a taxonomy term is displayed on the taxonomy listing. |
| `taxonomy.showHero` | `false` | Whether the thumbnail image will be shown as a hero image within each taxonomy page. |
| `taxonomy.heroStyle` | _Not set_ | Style to display the hero image, valid options are: `basic`, `big`, `background`, `thumbAndBackground`. |
| `taxonomy.showBreadcrumbs` | `false` | Whether or not breadcrumbs are displayed in the taxonomy header. |
| `taxonomy.showViews` | `false` | Whether or not article views are displayed. This requires firebase integrations to be enabled, look below. |
| `taxonomy.showLikes` | `false` | Whether or not article likes are displayed. This requires firebase integrations to be enabled, look below. |
| `taxonomy.showTableOfContents` | `false` | Whether or not the table of contents is displayed on taxonomies. |
| `term.showHero` | `false` | Whether the thumbnail image will be shown as a hero image within each term page. |
| `term.heroStyle` | _Not set_ | Style to display the hero image, valid options are: `basic`, `big`, `background`, `thumbAndBackground`. |
| `term.showBreadcrumbs` | `false` | Whether or not breadcrumbs are displayed in the term header. |
| `term.showViews` | `false` | Whether or not article views are displayed. This requires firebase integrations to be enabled, look below. |
| `term.showLikes` | `false` | Whether or not article likes are displayed. This requires firebase integrations to be enabled, look below. |
| `term.showTableOfContents` | `false` | Whether or not the table of contents is displayed on terms. |
| `term.groupByYear` | `false` | Whether or not articles are grouped by year on term pages. |
| `term.cardView` | `false` | Display lists as a gallery of cards. |
| `term.cardViewScreenWidth` | `false` | Enhance the width of card galleries in lists to take the full width available. |
| `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.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.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.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.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.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.yandex` | _Not set_ | The site verification string provided by Yandex to be included in the site metadata. |
<!-- prettier-ignore-end -->
## Other configuration files
The theme also includes a `markup.toml` configuration file. This file contains some important parameters that ensure that Hugo is correctly configured to generate sites built with Blowfish.
Always ensure this file is present in the config directory and that the required values are set. Failure to do so may cause certain features to fucntion incorrectly and could result in unintended behaviour.
Always ensure this file is present in the config directory and that the required values are set. Failure to do so may cause certain features to function incorrectly and could result in unintended behaviour.
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 MiB

+38 -36
View File
@@ -14,40 +14,42 @@ In addition to the [default Hugo front matter parameters](https://gohugo.io/cont
Front matter parameter default values are inherited from the theme's [base configuration]({{< ref "configuration" >}}), so you only need to specify these parameters in your front matter when you want to override the default.
<!-- prettier-ignore-start -->
|Name|Default|Description|
|---|---|---|
|`title`|_Not set_|The name of the article.|
|`description`|_Not set_|The text description for the article. It is used in the HTML metadata.|
|`externalUrl`|_Not set_|If this article is published on a third-party website, the URL to this article. Providing a URL will prevent a content page being generated and any references to this article will link directly to the third-party website.|
|`editURL`|`article.editURL`|When `showEdit` is active, the URL for the edit link.|
|`editAppendPath`|`article.editAppendPath`|When `showEdit` is active, whether or not the path to the current article should be appended to the URL set at `editURL`.|
|`groupByYear`|`list.groupByYear`|Whether or not articles are grouped by year on list pages.|
|`menu`|_Not set_|When a value is provided, a link to this article will appear in the named menus. Valid values are `main` or `footer`.|
|`robots`|_Not set_|String that indicates how robots should handle this article. 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.|
|`sharingLinks`|`article.sharingLinks`|Which sharing links to display at the end of this article. When not provided, or set to `false` no links will be displayed.|
|`showAuthor`|`article.showAuthor`|Whether or not the author box for the deafult author is displayed in the article footer.|
|`authors`|_Not set_|Array of values for authors, if set it overrides `showAuthor` settings for page or site. Used on the multiple authors feature, check [this page]({{< ref "multi-author" >}}) for more details on how to configure that feature.|
|`showAuthorsBadges`|`article.showAuthorsBadges`|Whether the `authors` taxonomies are are displayed in the article or list header. This requires the setup of `multiple authors` and the `authors` taxonomy. Check [this page]({{< ref "multi-author" >}}) for more details on how to configure that feature.|
|`showHero`|`article.showHero`|Whether the thumbnail image will be shown as a hero image within the article page.|
|`heroStyle`|`article.heroStyle`|Style to display the hero image, valid options are: `basic`, `big`, `background`.|
|`showBreadcrumbs`|`article.showBreadcrumbs` or `list.showBreadcrumbs`|Whether the breadcrumbs are displayed in the article or list header.|
|`showDate`|`article.showDate`|Whether or not the article date is displayed. The date is set using the `date` parameter.|
|`showDateUpdated`|`article.showDateUpdated`|Whether or not the date the article was updated is displayed. The date is set using the `lastmod` parameter.|
|`showEdit`|`article.showEdit`|Whether or not the link to edit the article content should be displayed.|
|`showHeadingAnchors`|`article.showHeadingAnchors`|Whether or not heading anchor links are displayed alongside headings within this article.|
|`showPagination`|`article.showPagination`|Whether or not the next/previous article links are displayed in the article footer.|
|`invertPagination`|`article.invertPagination`|Whether or not to flip the direction of the next/previous article links.|
|`showReadingTime`|`article.showReadingTime`|Whether or not the article reading time is displayed.|
|`showTaxonomies`|`article.showTaxonomies`|Whether or not the taxonomies that relate to this article are displayed.|
|`showTableOfContents`|`article.showTableOfContents`|Whether or not the table of contents is displayed on this article.|
|`showWordCount`|`article.showWordCount`|Whether or not the article word count is displayed.|
|`showComments`|`article.showComments`|Whether or not the [comments partial]({{< ref "partials#comments" >}}) is included after the article footer.|
|`showSummary`|`list.showSummary`|Whether or not the article summary should be displayed on list pages.|
|`showViews`|`article.showViews`|Whether or not the article views should be displayed in lists and detailed view. This requires a firebase integration. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish|
|`showLikes`|`article.showLikes`|Whether or not the article likes should be displayed in lists and detailed view. This requires a firebase integration. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish|
|`seriesOpened`|`article.seriesOpened`|Whether or not the series module will be displayed open by default or not.|
|`series`|_Not set_|Array of series the article belongs to, we recommend using only one series per article.|
|`series_order`|_Not set_|Number of the article within the series.|
|`summary`|Auto generated using `summaryLength` (see [site configuration]({{< ref "configuration#site-configuration" >}}))|When `showSummary` is enabled, this is the Markdown string to be used as the summary for this article.|
|`xml`|`true` unless excluded by `sitemap.excludedKinds`|Whether or not this article is included in the generated `/sitemap.xml` file.|
| Name | Default | Description |
| ----------------------------- | --------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `title` | _Not set_ | The name of the article. |
| `description` | _Not set_ | The text description for the article. It is used in the HTML metadata. |
| `externalUrl` | _Not set_ | If this article is published on a third-party website, the URL to this article. Providing a URL will prevent a content page being generated and any references to this article will link directly to the third-party website. |
| `editURL` | `article.editURL` | When `showEdit` is active, the URL for the edit link. |
| `editAppendPath` | `article.editAppendPath` | When `showEdit` is active, whether or not the path to the current article should be appended to the URL set at `editURL`. |
| `groupByYear` | `list.groupByYear` | Whether or not articles are grouped by year on list pages. |
| `menu` | _Not set_ | When a value is provided, a link to this article will appear in the named menus. Valid values are `main` or `footer`. |
| `robots` | _Not set_ | String that indicates how robots should handle this article. 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. |
| `sharingLinks` | `article.sharingLinks` | Which sharing links to display at the end of this article. When not provided, or set to `false` no links will be displayed. |
| `showAuthor` | `article.showAuthor` | Whether or not the author box for the deafult author is displayed in the article footer. |
| `authors` | _Not set_ | Array of values for authors, if set it overrides `showAuthor` settings for page or site. Used on the multiple authors feature, check [this page]({{< ref "multi-author" >}}) for more details on how to configure that feature. |
| `showAuthorsBadges` | `article.showAuthorsBadges` | Whether the `authors` taxonomies are are displayed in the article or list header. This requires the setup of `multiple authors` and the `authors` taxonomy. Check [this page]({{< ref "multi-author" >}}) for more details on how to configure that feature. |
| `showHero` | `article.showHero` | Whether the thumbnail image will be shown as a hero image within the article page. |
| `heroStyle` | `article.heroStyle` | Style to display the hero image, valid options are: `basic`, `big`, `background`. |
| `showBreadcrumbs` | `article.showBreadcrumbs` or `list.showBreadcrumbs` | Whether the breadcrumbs are displayed in the article or list header. |
| `showDate` | `article.showDate` | Whether or not the article date is displayed. The date is set using the `date` parameter. |
| `showDateUpdated` | `article.showDateUpdated` | Whether or not the date the article was updated is displayed. The date is set using the `lastmod` parameter. |
| `showEdit` | `article.showEdit` | Whether or not the link to edit the article content should be displayed. |
| `showHeadingAnchors` | `article.showHeadingAnchors` | Whether or not heading anchor links are displayed alongside headings within this article. |
| `showPagination` | `article.showPagination` | Whether or not the next/previous article links are displayed in the article footer. |
| `invertPagination` | `article.invertPagination` | Whether or not to flip the direction of the next/previous article links. |
| `showReadingTime` | `article.showReadingTime` | Whether or not the article reading time is displayed. |
| `showTaxonomies` | `article.showTaxonomies` | Whether or not the taxonomies that relate to this article are displayed. |
| `showTableOfContents` | `article.showTableOfContents` | Whether or not the table of contents is displayed on this article. |
| `showWordCount` | `article.showWordCount` | Whether or not the article word count is displayed. |
| `showComments` | `article.showComments` | Whether or not the [comments partial]({{< ref "partials#comments" >}}) is included after the article footer. |
| `showSummary` | `list.showSummary` | Whether or not the article summary should be displayed on list pages. |
| `showViews` | `article.showViews` | Whether or not the article views should be displayed in lists and detailed view. This requires a firebase integration. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish |
| `showLikes` | `article.showLikes` | Whether or not the article likes should be displayed in lists and detailed view. This requires a firebase integration. Check [this page]({{< ref "firebase-views" >}}) for a guide on how to integrate Firebase into Blowfish |
| `seriesOpened` | `article.seriesOpened` | Whether or not the series module will be displayed open by default or not. |
| `series` | _Not set_ | Array of series the article belongs to, we recommend using only one series per article. |
| `series_order` | _Not set_ | Number of the article within the series. |
| `summary` | Auto generated using `summaryLength` (see [site configuration]({{< ref "configuration#site-configuration" >}})) | When `showSummary` is enabled, this is the Markdown string to be used as the summary for this article. |
| `xml` | `true` unless excluded by `sitemap.excludedKinds` | Whether or not this article is included in the generated `/sitemap.xml` file. |
| `layoutBackgroundBlur` | `true` | Makes the background image in the background heroStyle blur with the scroll |
| `layoutBackgroundHeaderSpace` | `true` | Add space between the header and the body. |
<!-- prettier-ignore-end -->
@@ -195,12 +195,14 @@ Menu links will be sorted from lowest to highest `weight`, and then alphabetical
Both menus are completely optional and can be commented out if not required. Use the template provided in the file as a guide.
## Thumbnails
## Thumbnails & Backgrounds
Blowfish was built so it would be easy to add visual support to your articles. If your familiar with Hugo article strucutre, you just need to place an image file (almost all formats are supported bue we recommend `.png` or `.jpg`) that starts with `feature*` inside your article folder. And that's it, Blowfish will then able to both use the image as a thumbnail within your website as well as for <a target="_blank" href="https://oembed.com/">oEmbed</a> cards across social platforms.
[Here]({{< ref "thumbnails" >}}) is also a guide with more info and a [sample]({{< ref "thumbnail_sample" >}}) if you want to see how you can do it.
Additionally, Blowfish also supports background hero images in articles and lists. In order to use a different image than the featured one, add an image file in which the name starts with `background*`.
## Detailed configuration
The steps above are the bare minimum configuration. If you now run `hugo server` you will be presented with a blank Blowfish website. Detailed configuration is covered in the [Configuration]({{< ref "configuration" >}}) section.
@@ -17,52 +17,52 @@ The layout of the homepage is controlled by the `homepage.layout` setting in the
The default layout is the profile layout, which is great for personal websites and blogs. It puts the author's details front and centre by providing an image and links to social profiles.
<img class="thumbnailshadow" src="home-profile.png"/>
<img class="thumbnailshadow" src="img/home-profile.png"/>
The author information is provided in the languages configuration file. Refer to the [Getting Started]({{< ref "getting-started" >}}) and [Language Configuration]({{< ref "configuration##language-and-i18n" >}}) sections for parameter details.
Additionally, any Markdown content that is provided in the homepage content will be placed below the author profile. This allows extra flexibility for displaying a bio or other custom content using shortcodes.
To enable the profile layout, set `homepage.layout = "profile"` in the `params.toml` configuration file.
To enable the Profile layout, set `homepage.layout = "profile"` in the `params.toml` configuration file.
## Page layout
The page layout is simply a normal content page that displays your Markdown content. It's great for static websites and provides a lot of flexibility.
<img class="thumbnailshadow" src="home-page.png"/>
<img class="thumbnailshadow" src="img/home-page.png"/>
To enable the page layout, set `homepage.layout = "page"` in the `params.toml` configuration file.
To enable the Page layout, set `homepage.layout = "page"` in the `params.toml` configuration file.
## Hero layout
The hero layout brings together ideas from the profile and card layouts. This one not only displays information on the author of the site but it also loads your markdown beneath it.
<img class="thumbnailshadow" src="home-hero.png"/>
<img class="thumbnailshadow" src="img/home-hero.png"/>
To enable the profile layout, set `homepage.layout = "profile"` and `homepage.homepageImage` in the `params.toml` configuration file.
To enable the Hero layout, set `homepage.layout = "hero"` and `homepage.homepageImage` in the `params.toml` configuration file.
## Background layout
The background layout is a more smooth version of the hero layout. As in the Hero layout, this one also displays both information on the author of the site and loads your markdown beneath it.
<img class="thumbnailshadow" src="home-background.png"/>
<img class="thumbnailshadow" src="img/home-background.png"/>
To enable the profile layout, set `homepage.layout = "background"` and `homepage.homepageImage` in the `params.toml` configuration file.
To enable the Background layout, set `homepage.layout = "background"` and `homepage.homepageImage` in the `params.toml` configuration file.
## Card layout
The card layout is an extension of the page layout. It provides the same level of flexivbility by also displaying your markdown content and adds a card image to display visual content.
<img class="thumbnailshadow" src="home-card.png"/>
<img class="thumbnailshadow" src="img/home-card.png"/>
To enable the profile layout, set `homepage.layout = "profile"` and `homepage.homepageImage` in the `params.toml` configuration file.
To enable the Card layout, set `homepage.layout = "card"` and `homepage.homepageImage` in the `params.toml` configuration file.
## Custom layout
If the built-in homepage layouts aren't sufficient for your needs, you have the option to provide your own custom layout. This allows you to have total control over the page content and essentially gives you a blank slate to work with.
To enable the custom layout, set `homepage.layout = "custom"` in the `params.toml` configuration file.
To enable the Custom layout, set `homepage.layout = "custom"` in the `params.toml` configuration file.
With the configuration value set, create a new `custom.html` file and place it in `layouts/partials/home/custom.html`. Now whatever is in the `custom.html` file will be placed in the content area of the site homepage. You may use whatever HTML, Tailwind, or Hugo templating functions you wish to define your layout.
@@ -74,7 +74,7 @@ As an example, the [homepage]({{< ref "/" >}}) on this site uses the custom layo
All homepage layouts have the option of displaying recent articles below the main page content. To enable this, simply set the `homepage.showRecent` setting to `true` in the `params.toml` configuration file.
<img class="thumbnailshadow" src="home-list.png"/>
<img class="thumbnailshadow" src="img/home-list.png"/>
The articles listed in this section are derived from the `mainSections` setting which allows for whatever content types you are using on your website. For instance, if you had content sections for _posts_ and _projects_ you could set this setting to `["posts", "projects"]` and all the articles in these two sections would be used to populate the recent list. The theme expects this setting to be an array so if you only use one section for all your content, you should set this accordingly: `["blog"]`.
@@ -82,4 +82,8 @@ The articles listed in this section are derived from the `mainSections` setting
Blowfish was built so it would be easy to add visual support to your articles. If your familiar with Hugo article strucutre, you just need to place an image file (almost all formats are supported bue we recommend `.png` or `.jpg`) that starts with `feature*` inside your article folder. And that's it, Blowfish will then able to both use the image as a thumbnail within your website as well as for <a target="_blank" href="https://oembed.com/">oEmbed</a> cards across social platforms.
[Here]({{< ref "thumbnails" >}}) is a guide with more info and a [sample]({{< ref "thumbnail_sample" >}}) if you want to see an example.
[Here]({{< ref "thumbnails" >}}) is a guide with more info and a [sample]({{< ref "thumbnail_sample" >}}) if you want to see an example.
## Card Gallery
Blowfish also supports displaying the standard lists of articles as card galleries. You can config this both for the recent section in the homepage and for lists of articles across your website. For homepage you can use `homepage.cardView` and `homepage.cardViewScreenWidth`; and for lists use `list.cardView` and `list.cardViewScreenWidth`. Check the [Configuration docs]({{< ref "configuration" >}}) for more details, and the homepage for a live demo.
+30 -30
View File
@@ -37,15 +37,29 @@ Note that you can name the project directory whatever you choose, but the instru
There several different ways to install the Blowfish theme into your Hugo website. From easiest to most difficult to install and maintain, they are:
- [Hugo module](#install-using-hugo) (recommended)
- [Git submodule](#install-using-git)
- [Git submodule](#install-using-git) (recommended)
- [Hugo module](#install-using-hugo)
- [Manual file copy](#install-manually)
If you're unsure, choose the Hugo module method.
If you're unsure, choose the Git submodule method.
#### Install using git
This method is the quickest and easiest for keeping the theme up-to-date. Besides **Hugo** and **Go**, you'll also need to ensure you have **Git** installed on your local machine.
Change into the directory for your Hugo website (that you created above), initialise a new `git` repository and add Blowfish as a submodule.
```bash
cd mywebsite
git init
git submodule add -b main https://github.com/nunocoracao/blowfish.git themes/blowfish
```
Then continue to [set up the theme configuration files](#set-up-theme-configuration-files).
#### Install using Hugo
This method is the quickest and easiest for keeping the theme up-to-date. Hugo uses **Go** to initialise and manage modules so you need to ensure you have `go` installed before proceeding.
For this method you'll use Hugo to manage your themes. Hugo uses **Go** to initialise and manage modules so you need to ensure you have `go` installed before proceeding.
1. [Download](https://golang.org/dl/) and install Go. You can check if it's already installed by using the command `go version`.
@@ -67,26 +81,12 @@ This method is the quickest and easiest for keeping the theme up-to-date. Hugo u
```toml
[[imports]]
path = "github.com/nunocoracao/blowfish"
path = "github.com/nunocoracao/blowfish/v2"
```
4. Start your server using `hugo server` and the theme will be downloaded automatically.
5. Continue to [set up the theme configuration files](#set-up-theme-configuration-files).
#### Install using git
For this method you'll need to ensure you have **Git** installed on your local machine.
Change into the directory for your Hugo website (that you created above), initialise a new `git` repository and add Blowfish as a submodule.
```bash
cd mywebsite
git init
git submodule add -b main https://github.com/nunocoracao/blowfish.git themes/blowfish
```
Then continue to [set up the theme configuration files](#set-up-theme-configuration-files).
#### Install manually
1. Download the latest release of the theme source code.
@@ -136,10 +136,20 @@ From time to time there will be [new releases](https://github.com/nunocoracao/bl
How you go about this will depend on the installation method you chose when the theme was originally installed. Instructions for each method can be found below.
- [Hugo module](#update-using-hugo)
- [Git submodule](#update-using-git)
- [Hugo module](#update-using-hugo)
- [Manual file copy](#update-manually)
### Update using git
Git submodules can be updated using the `git` command. Simply execute the following command and the latest version of the theme will be downloaded into your local repository:
```shell
git submodule update --remote --merge
```
Once the submodule has been updated, rebuild your site and check everything works as expected.
### Update using Hugo
Hugo makes updating modules super easy. Simply change into your project directory and execute the following command:
@@ -152,16 +162,6 @@ Hugo will automatically update any modules that are required for your project. I
Then simply rebuild your site and check everything works as expected.
### Update using git
Git submodules can be updated using the `git` command. Simply execute the following command and the latest version of the theme will be downloaded into your local repository:
```shell
git submodule update --remote --merge
```
Once the submodule has been updated, rebuild your site and check everything works as expected.
### Update manually
Updating Blowfish manually requires you to download the latest copy of the theme and replace the old version in your project.
+11 -11
View File
@@ -32,16 +32,16 @@ _Note: the key in the social object will be used to fetch one of the theme’s i
"name": "Nuno Coração",
"image" : "img/nuno_avatar.jpg",
"bio": "Theme Creator",
"social": {
"linkedin": "https://linkedin.com/in/nunocoracao",
"twitter": "https://twitter.com/nunocoracao",
"instagram": "https://instagram.com/nunocoracao",
"medium": "https://medium.com/@nunocoracao",
"github": "https://github.com/nunocoracao",
"goodreads": "http://goodreads.com/nunocoracao",
"keybase": "https://keybase.io/nunocoracao",
"reddit": "https://reddit.com/user/nunoheart"
}
"social": [
{ "linkedin": "https://linkedin.com/in/nunocoracao" },
{ "twitter": "https://twitter.com/nunocoracao" },
{ "instagram": "https://instagram.com/nunocoracao" },
{ "medium": "https://medium.com/@nunocoracao" },
{ "github": "https://github.com/nunocoracao" },
{ "goodreads": "http://goodreads.com/nunocoracao" },
{ "keybase": "https://keybase.io/nunocoracao" },
{ "reddit": "https://reddit.com/user/nunoheart" }
]
}
```
@@ -99,4 +99,4 @@ Nuno's awesome dummy bio.
This sample sample below shows an example where the default site author is turned off and the article has multiple authors.
{{< article link="/blowfish/samples/multiple-authors/" >}}
{{< article link="/samples/multiple-authors/" >}}
+2 -4
View File
@@ -1,5 +1,5 @@
---
title: "Welcome to Blowfish 🐡"
title: "Welcome to Blowfish"
date: 2022-01-19
draft: false
description: "Discover what's new in Blowfish version 2.0."
@@ -76,6 +76,4 @@ The new image resizing features also provide full control over `alt` and `title`
## A whole lot more
There's countless other features to explore. From being able to display taxonomies on articles and list pages, to using the new `headline` author parameter to customise your homepage. There's also improved JSON-LD strucured data which further optimises SEO performance.
---
There's countless other features to explore. From being able to display taxonomies on articles and list pages, to using the new `headline` author parameter to customise your homepage. There's also improved JSON-LD strucured data which further optimises SEO performance.
+22
View File
@@ -0,0 +1,22 @@
---
title: "Showcase"
description: "See what's possible with Blowfish."
showLikes: true
showViews: true
cascade:
showEdit: false
showReadingTime: false
showSummary: false
showLikes: false
showViews: false
---
{{< lead >}}
See what's possible with Blowfish.
{{< /lead >}}
This section contains links to example templates and pages created using Blowfish to get you inspired.
---
+5
View File
@@ -0,0 +1,5 @@
---
title: "Blowfish Artist"
date: 2022-11-06
externalUrl: "https://nunocoracao.github.io/blowfish_artist/"
---
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

+5
View File
@@ -0,0 +1,5 @@
---
title: "Blowfish Lite"
date: 2022-11-07
externalUrl: "https://nunocoracao.github.io/blowfish_lite/"
---
Binary file not shown.

After

Width:  |  Height:  |  Size: 107 KiB

+5
View File
@@ -0,0 +1,5 @@
---
title: "Blowfish Lowkey"
date: 2022-11-06
externalUrl: "https://nunocoracao.github.io/blowfish_lowkey/"
---
Binary file not shown.

After

Width:  |  Height:  |  Size: 703 KiB

@@ -0,0 +1,5 @@
---
title: "Blowfish Template - GitHub Repo"
date: 2020-11-06
externalUrl: "https://github.com/nunocoracao/blowfish_template"
---
Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

+5
View File
@@ -0,0 +1,5 @@
---
title: "Blowfish Template"
date: 2020-11-06
externalUrl: "https://nunocoracao.github.io/blowfish_template/"
---
Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 MiB

@@ -0,0 +1,5 @@
---
title: "Blowfish Artist - Repo"
date: 2021-11-06
externalUrl: "https://github.com/nunocoracao/blowfish_artist/"
---
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

@@ -0,0 +1,5 @@
---
title: "Blowfish Lite - Repo"
date: 2021-11-07
externalUrl: "https://github.com/nunocoracao/blowfish_lite/"
---
Binary file not shown.

After

Width:  |  Height:  |  Size: 107 KiB

@@ -0,0 +1,5 @@
---
title: "Blowfish Lowkey - Repo"
date: 2021-11-06
externalUrl: "https://github.com/nunocoracao/blowfish_lowkey/"
---
Binary file not shown.

After

Width:  |  Height:  |  Size: 703 KiB

+19
View File
@@ -0,0 +1,19 @@
---
title: "TEST"
date: 2022-06-13T20:55:37+01:00
draft: true
showDate : false
showDateUpdated : false
showHeadingAnchors : false
showPagination : false
showReadingTime : false
showTableOfContents : true
showTaxonomies : false
showWordCount : false
showSummary : false
sharingLinks : false
cardView: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
+7
View File
@@ -0,0 +1,7 @@
---
title: "Charts"
date: 2019-03-06
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
---
+1 -1
View File
@@ -4,7 +4,7 @@ description: "See what's possible with Blowfish."
cascade:
showEdit: false
showSummary: true
showSummary: false
---
{{< lead >}}
Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 MiB

@@ -14,6 +14,7 @@ The examples below are a small selection taken from the [official Mermaid docs](
## Flowchart
<div style="background-color:white; padding: 20px">
{{< mermaid >}}
graph TD
A[Christmas] -->|Get money| B(Go shopping)
@@ -30,9 +31,11 @@ F
G
end
{{< /mermaid >}}
</div>
## Sequence diagram
<div style="background-color:white; padding: 20px">
{{< mermaid >}}
sequenceDiagram
autonumber
@@ -50,9 +53,11 @@ loop Every minute
John-->Alice: Great!
end
{{< /mermaid >}}
</div>
## Class diagram
<div style="background-color:white; padding: 20px">
{{< mermaid >}}
classDiagram
Animal "1" <|-- Duck
@@ -76,9 +81,11 @@ class Zebra{
+run()
}
{{< /mermaid >}}
</div>
## Entity relationship diagram
<div style="background-color:white; padding: 20px">
{{< mermaid >}}
erDiagram
CUSTOMER }|..|{ DELIVERY-ADDRESS : has
@@ -90,3 +97,5 @@ ORDER ||--|{ ORDER-ITEM : includes
PRODUCT-CATEGORY ||--|{ PRODUCT : contains
PRODUCT ||--o{ ORDER-ITEM : "ordered in"
{{< /mermaid >}}
</div>
+4 -1
View File
@@ -35,6 +35,7 @@ The full list of built-in icons and their corresponding names can referenced bel
| dribbble | {{< icon dribbble >}} |
| edit | {{< icon edit >}} |
| email | {{< icon email >}} |
| envelope | {{< icon envelope >}} |
| eye | {{< icon eye >}} |
| facebook | {{< icon facebook >}} |
| fire | {{< icon fire >}} |
@@ -77,6 +78,8 @@ The full list of built-in icons and their corresponding names can referenced bel
| poo | {{< icon poo >}} |
| reddit | {{< icon reddit >}} |
| researchgate | {{< icon researchgate >}} |
| rss | {{< icon rss >}} |
| rss-square | {{< icon rss-square >}} |
| search | {{< icon search >}} |
| shield | {{< icon shield >}} |
| skull-crossbones | {{< icon skull-crossbones >}} |
@@ -97,4 +100,4 @@ The full list of built-in icons and their corresponding names can referenced bel
| wand-magic-sparkles | {{< icon wand-magic-sparkles >}} |
| whatsapp | {{< icon whatsapp >}} |
| xmark | {{< icon xmark >}} |
| youtube | {{< icon youtube >}} |
| youtube | {{< icon youtube >}} |
@@ -11,9 +11,12 @@ KaTeX can be used to render mathematical notation within articles.
{{< katex >}}
Blowfish will only bundle the KaTeX assets into your project if you make use of mathematical notation. In order for this to work, simply include the [`katex` shortcode]({{< ref "docs/shortcodes#katex" >}}) within the article. Any KaTeX syntax on that page will then be automatically rendered.
Blowfish will only bundle the KaTeX assets into your project if you make use of mathematical notation. In order for this to work, simply include the [`katex` shortcode]({{< ref "docs/shortcodes#katex" >}}) within the article. Example below:
Use the online reference of [supported TeX functions](https://katex.org/docs/supported.html) for the available syntax.
```md
{{</* katex */>}}
```
Any KaTeX syntax on that page will then be automatically rendered. Use the online reference of [supported TeX functions](https://katex.org/docs/supported.html) for the available syntax.
## Inline notation
Loaded 100 of 281 files, more files were not shown because too many files have changed in this diff. Show more