Merge pull request #504 from nunocoracao/dev

🔖 Release v2.27.0
This commit is contained in:
Nuno Coração 2023-02-03 22:03:41 +00:00 committed by GitHub
commit f6e1b40be2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
42 changed files with 1306 additions and 190 deletions

View file

@ -42,7 +42,7 @@ jobs:
submodules: recursive
- name: Setup Pages
id: pages
uses: actions/configure-pages@v2
uses: actions/configure-pages@v3
- name: Build with Hugo
env:
# For maximum backward compatibility with Hugo modules

View file

@ -38,7 +38,7 @@ Blowfish is designed to be a powerful, lightweight theme for [Hugo](https://gohu
- Support for sub-navigation menu
- Multilingual content support inlcuding support for RTL languages
- Ability to link to posts on third-party websites
- Support for several shortcodes like Gallery, GitHub cards, and Carousels
- Support for several shortcodes like Gallery, Timeline, GitHub cards, and Carousels
- Buymeacoffee integration
- Client-side site search powered by Fuse.js
- Diagrams and visualisations using Mermaid

View file

@ -4450,6 +4450,14 @@ textarea.form-control.is-invalid {
margin-top: 5rem;
}
.-ml-12 {
margin-left: -3rem;
}
.ml-6 {
margin-left: 1.5rem;
}
.mt-3 {
margin-top: 0.75rem;
}
@ -4610,6 +4618,10 @@ textarea.form-control.is-invalid {
min-width: 220px;
}
.min-w-\[30px\] {
min-width: 30px;
}
.min-w-full {
min-width: 100%;
}
@ -4841,6 +4853,10 @@ textarea.form-control.is-invalid {
border-top-width: 1px;
}
.border-l-2 {
border-left-width: 2px;
}
.border-dotted {
border-style: dotted;
}
@ -4907,6 +4923,11 @@ textarea.form-control.is-invalid {
background-color: rgba(var(--color-primary-600), var(--tw-bg-opacity));
}
.bg-primary-500 {
--tw-bg-opacity: 1;
background-color: rgba(var(--color-primary-500), var(--tw-bg-opacity));
}
.bg-neutral-100\/50 {
background-color: rgba(var(--color-neutral-100), 0.5);
}
@ -4990,6 +5011,10 @@ textarea.form-control.is-invalid {
padding: 1.25rem;
}
.p-6 {
padding: 1.5rem;
}
.px-6 {
padding-left: 1.5rem;
padding-right: 1.5rem;
@ -5271,6 +5296,11 @@ textarea.form-control.is-invalid {
color: rgba(var(--color-neutral), var(--tw-text-opacity)) !important;
}
.text-neutral-50 {
--tw-text-opacity: 1;
color: rgba(var(--color-neutral-50), var(--tw-text-opacity));
}
.text-primary-800 {
--tw-text-opacity: 1;
color: rgba(var(--color-primary-800), var(--tw-text-opacity));
@ -6156,6 +6186,8 @@ body:has(#menu-controller:checked) {
text-underline-offset: 4px;
}
/* Gallery Specific Styles */
.grid-w10 {
width: calc(10% - 5px);
margin: 0px !important;
@ -6261,6 +6293,543 @@ body:has(#menu-controller:checked) {
margin: 0px !important;
}
@media (min-width: 640px) {
.sm\:grid-w10 {
width: calc(10% - 5px);
margin: 0px !important;
}
.sm\:grid-w15 {
width: calc(15% - 5px);
margin: 0px !important;
}
.sm\:grid-w20 {
width: calc(20% - 5px);
margin: 0px !important;
}
.sm\:grid-w25 {
width: calc(25% - 5px);
margin: 0px !important;
}
.sm\:grid-w30 {
width: calc(30% - 5px);
margin: 0px !important;
}
.sm\:grid-w33 {
width: calc(33% - 5px);
margin: 0px !important;
}
.sm\:grid-w35 {
width: calc(35% - 5px);
margin: 0px !important;
}
.sm\:grid-w40 {
width: calc(40% - 5px);
margin: 0px !important;
}
.sm\:grid-w45 {
width: calc(45% - 5px);
margin: 0px !important;
}
.sm\:grid-w50 {
width: calc(50% - 5px);
margin: 0px !important;
}
.sm\:grid-w55 {
width: calc(55% - 5px);
margin: 0px !important;
}
.sm\:grid-w60 {
width: calc(60% - 5px);
margin: 0px !important;
}
.sm\:grid-w65 {
width: calc(65% - 5px);
margin: 0px !important;
}
.sm\:grid-w66 {
width: calc(66% - 5px);
margin: 0px !important;
}
.sm\:grid-w70 {
width: calc(70% - 5px);
margin: 0px !important;
}
.sm\:grid-w75 {
width: calc(75% - 5px);
margin: 0px !important;
}
.sm\:grid-w80 {
width: calc(80% - 5px);
margin: 0px !important;
}
.sm\:grid-w85 {
width: calc(85% - 5px);
margin: 0px !important;
}
.sm\:grid-w90 {
width: calc(90% - 5px);
margin: 0px !important;
}
.sm\:grid-w95 {
width: calc(95% - 5px);
margin: 0px !important;
}
.sm\:grid-w100 {
width: calc(100% - 5px);
margin: 0px !important;
}
}
@media (min-width: 853px) {
.md\:grid-w10 {
width: calc(10% - 5px);
margin: 0px !important;
}
.md\:grid-w15 {
width: calc(15% - 5px);
margin: 0px !important;
}
.md\:grid-w20 {
width: calc(20% - 5px);
margin: 0px !important;
}
.md\:grid-w25 {
width: calc(25% - 5px);
margin: 0px !important;
}
.md\:grid-w30 {
width: calc(30% - 5px);
margin: 0px !important;
}
.md\:grid-w33 {
width: calc(33% - 5px);
margin: 0px !important;
}
.md\:grid-w35 {
width: calc(35% - 5px);
margin: 0px !important;
}
.md\:grid-w40 {
width: calc(40% - 5px);
margin: 0px !important;
}
.md\:grid-w45 {
width: calc(45% - 5px);
margin: 0px !important;
}
.md\:grid-w50 {
width: calc(50% - 5px);
margin: 0px !important;
}
.md\:grid-w55 {
width: calc(55% - 5px);
margin: 0px !important;
}
.md\:grid-w60 {
width: calc(60% - 5px);
margin: 0px !important;
}
.md\:grid-w65 {
width: calc(65% - 5px);
margin: 0px !important;
}
.md\:grid-w66 {
width: calc(66% - 5px);
margin: 0px !important;
}
.md\:grid-w70 {
width: calc(70% - 5px);
margin: 0px !important;
}
.md\:grid-w75 {
width: calc(75% - 5px);
margin: 0px !important;
}
.md\:grid-w80 {
width: calc(80% - 5px);
margin: 0px !important;
}
.md\:grid-w85 {
width: calc(85% - 5px);
margin: 0px !important;
}
.md\:grid-w90 {
width: calc(90% - 5px);
margin: 0px !important;
}
.md\:grid-w95 {
width: calc(95% - 5px);
margin: 0px !important;
}
.md\:grid-w100 {
width: calc(100% - 5px);
margin: 0px !important;
}
}
@media (min-width: 1024px) {
.lg\:grid-w10 {
width: calc(10% - 5px);
margin: 0px !important;
}
.lg\:grid-w15 {
width: calc(15% - 5px);
margin: 0px !important;
}
.lg\:grid-w20 {
width: calc(20% - 5px);
margin: 0px !important;
}
.lg\:grid-w25 {
width: calc(25% - 5px);
margin: 0px !important;
}
.lg\:grid-w30 {
width: calc(30% - 5px);
margin: 0px !important;
}
.lg\:grid-w33 {
width: calc(33% - 5px);
margin: 0px !important;
}
.lg\:grid-w35 {
width: calc(35% - 5px);
margin: 0px !important;
}
.lg\:grid-w40 {
width: calc(40% - 5px);
margin: 0px !important;
}
.lg\:grid-w45 {
width: calc(45% - 5px);
margin: 0px !important;
}
.lg\:grid-w50 {
width: calc(50% - 5px);
margin: 0px !important;
}
.lg\:grid-w55 {
width: calc(55% - 5px);
margin: 0px !important;
}
.lg\:grid-w60 {
width: calc(60% - 5px);
margin: 0px !important;
}
.lg\:grid-w65 {
width: calc(65% - 5px);
margin: 0px !important;
}
.lg\:grid-w66 {
width: calc(66% - 5px);
margin: 0px !important;
}
.lg\:grid-w70 {
width: calc(70% - 5px);
margin: 0px !important;
}
.lg\:grid-w75 {
width: calc(75% - 5px);
margin: 0px !important;
}
.lg\:grid-w80 {
width: calc(80% - 5px);
margin: 0px !important;
}
.lg\:grid-w85 {
width: calc(85% - 5px);
margin: 0px !important;
}
.lg\:grid-w90 {
width: calc(90% - 5px);
margin: 0px !important;
}
.lg\:grid-w95 {
width: calc(95% - 5px);
margin: 0px !important;
}
.lg\:grid-w100 {
width: calc(100% - 5px);
margin: 0px !important;
}
}
@media (min-width: 1280px) {
.xl\:grid-w10 {
width: calc(10% - 5px);
margin: 0px !important;
}
.xl\:grid-w15 {
width: calc(15% - 5px);
margin: 0px !important;
}
.xl\:grid-w20 {
width: calc(20% - 5px);
margin: 0px !important;
}
.xl\:grid-w25 {
width: calc(25% - 5px);
margin: 0px !important;
}
.xl\:grid-w30 {
width: calc(30% - 5px);
margin: 0px !important;
}
.xl\:grid-w33 {
width: calc(33% - 5px);
margin: 0px !important;
}
.xl\:grid-w35 {
width: calc(35% - 5px);
margin: 0px !important;
}
.xl\:grid-w40 {
width: calc(40% - 5px);
margin: 0px !important;
}
.xl\:grid-w45 {
width: calc(45% - 5px);
margin: 0px !important;
}
.xl\:grid-w50 {
width: calc(50% - 5px);
margin: 0px !important;
}
.xl\:grid-w55 {
width: calc(55% - 5px);
margin: 0px !important;
}
.xl\:grid-w60 {
width: calc(60% - 5px);
margin: 0px !important;
}
.xl\:grid-w65 {
width: calc(65% - 5px);
margin: 0px !important;
}
.xl\:grid-w66 {
width: calc(66% - 5px);
margin: 0px !important;
}
.xl\:grid-w70 {
width: calc(70% - 5px);
margin: 0px !important;
}
.xl\:grid-w75 {
width: calc(75% - 5px);
margin: 0px !important;
}
.xl\:grid-w80 {
width: calc(80% - 5px);
margin: 0px !important;
}
.xl\:grid-w85 {
width: calc(85% - 5px);
margin: 0px !important;
}
.xl\:grid-w90 {
width: calc(90% - 5px);
margin: 0px !important;
}
.xl\:grid-w95 {
width: calc(95% - 5px);
margin: 0px !important;
}
.xl\:grid-w100 {
width: calc(100% - 5px);
margin: 0px !important;
}
}
@media (min-width: 1536px) {
.2xl\:grid-w10 {
width: calc(10% - 5px);
margin: 0px !important;
}
.2xl\:grid-w15 {
width: calc(15% - 5px);
margin: 0px !important;
}
.2xl\:grid-w20 {
width: calc(20% - 5px);
margin: 0px !important;
}
.2xl\:grid-w25 {
width: calc(25% - 5px);
margin: 0px !important;
}
.2xl\:grid-w30 {
width: calc(30% - 5px);
margin: 0px !important;
}
.2xl\:grid-w33 {
width: calc(33% - 5px);
margin: 0px !important;
}
.2xl\:grid-w35 {
width: calc(35% - 5px);
margin: 0px !important;
}
.2xl\:grid-w40 {
width: calc(40% - 5px);
margin: 0px !important;
}
.2xl\:grid-w45 {
width: calc(45% - 5px);
margin: 0px !important;
}
.2xl\:grid-w50 {
width: calc(50% - 5px);
margin: 0px !important;
}
.2xl\:grid-w55 {
width: calc(55% - 5px);
margin: 0px !important;
}
.2xl\:grid-w60 {
width: calc(60% - 5px);
margin: 0px !important;
}
.2xl\:grid-w65 {
width: calc(65% - 5px);
margin: 0px !important;
}
.2xl\:grid-w66 {
width: calc(66% - 5px);
margin: 0px !important;
}
.2xl\:grid-w70 {
width: calc(70% - 5px);
margin: 0px !important;
}
.2xl\:grid-w75 {
width: calc(75% - 5px);
margin: 0px !important;
}
.2xl\:grid-w80 {
width: calc(80% - 5px);
margin: 0px !important;
}
.2xl\:grid-w85 {
width: calc(85% - 5px);
margin: 0px !important;
}
.2xl\:grid-w90 {
width: calc(90% - 5px);
margin: 0px !important;
}
.2xl\:grid-w95 {
width: calc(95% - 5px);
margin: 0px !important;
}
.2xl\:grid-w100 {
width: calc(100% - 5px);
margin: 0px !important;
}
}
/* Carousel Specific Styles */
.ratio-16-9 {
padding-top: 56.25%;
}
@ -6279,6 +6848,106 @@ body:has(#menu-controller:checked) {
/* 32:9 Aspect Ratio */
@media (min-width: 640px) {
.sm\:ratio-16-9 {
padding-top: 56.25%;
}
/* 16:9 Aspect Ratio */
.sm\:ratio-21-9 {
padding-top: 42.85%;
}
/* 21:9 Aspect Ratio */
.sm\:ratio-32-9 {
padding-top: 28.125%;
}
/* 32:9 Aspect Ratio */
}
@media (min-width: 853px) {
.md\:ratio-16-9 {
padding-top: 56.25%;
}
/* 16:9 Aspect Ratio */
.md\:ratio-21-9 {
padding-top: 42.85%;
}
/* 21:9 Aspect Ratio */
.md\:ratio-32-9 {
padding-top: 28.125%;
}
/* 32:9 Aspect Ratio */
}
@media (min-width: 1024px) {
.lg\:ratio-16-9 {
padding-top: 56.25%;
}
/* 16:9 Aspect Ratio */
.lg\:ratio-21-9 {
padding-top: 42.85%;
}
/* 21:9 Aspect Ratio */
.lg\:ratio-32-9 {
padding-top: 28.125%;
}
/* 32:9 Aspect Ratio */
}
@media (min-width: 1280px) {
.xl\:ratio-16-9 {
padding-top: 56.25%;
}
/* 16:9 Aspect Ratio */
.xl\:ratio-21-9 {
padding-top: 42.85%;
}
/* 21:9 Aspect Ratio */
.xl\:ratio-32-9 {
padding-top: 28.125%;
}
/* 32:9 Aspect Ratio */
}
@media (min-width: 1536px) {
.2xl\:ratio-16-9 {
padding-top: 56.25%;
}
/* 16:9 Aspect Ratio */
.2xl\:ratio-21-9 {
padding-top: 42.85%;
}
/* 21:9 Aspect Ratio */
.2xl\:ratio-32-9 {
padding-top: 28.125%;
}
/* 32:9 Aspect Ratio */
}
.first\:mt-8:first-child {
margin-top: 2rem;
}
@ -6545,6 +7214,11 @@ body:has(#menu-controller:checked) {
border-color: rgba(var(--color-neutral-700), var(--tw-border-opacity));
}
.dark .dark\:border-primary-300 {
--tw-border-opacity: 1;
border-color: rgba(var(--color-primary-300), var(--tw-border-opacity));
}
.dark .dark\:bg-neutral-800 {
--tw-bg-opacity: 1;
background-color: rgba(var(--color-neutral-800), var(--tw-bg-opacity));
@ -6583,6 +7257,11 @@ body:has(#menu-controller:checked) {
background-color: rgba(var(--color-primary-900), var(--tw-bg-opacity));
}
.dark .dark\:bg-primary-300 {
--tw-bg-opacity: 1;
background-color: rgba(var(--color-primary-300), var(--tw-bg-opacity));
}
.dark .dark\:from-neutral-800 {
--tw-gradient-from: rgba(var(--color-neutral-800), 1);
--tw-gradient-to: rgba(var(--color-neutral-800), 0);
@ -6682,6 +7361,11 @@ body:has(#menu-controller:checked) {
color: rgba(var(--color-neutral-100), var(--tw-text-opacity));
}
.dark .dark\:text-neutral-700 {
--tw-text-opacity: 1;
color: rgba(var(--color-neutral-700), var(--tw-text-opacity));
}
.dark .dark\:text-neutral-200 {
--tw-text-opacity: 1;
color: rgba(var(--color-neutral-200), var(--tw-text-opacity));

View file

@ -448,6 +448,7 @@ body:has(#menu-controller:checked) {
text-underline-offset: 4px;
}
/* Gallery Specific Styles */
.grid-w10 { width: calc(10% - 5px); margin: 0px !important; }
.grid-w15 { width: calc(15% - 5px); margin: 0px !important; }
.grid-w20 { width: calc(20% - 5px); margin: 0px !important; }
@ -470,6 +471,157 @@ body:has(#menu-controller:checked) {
.grid-w95 { width: calc(95% - 5px); margin: 0px !important; }
.grid-w100 { width: calc(100% - 5px); margin: 0px !important; }
@screen sm {
.sm\:grid-w10 { width: calc(10% - 5px); margin: 0px !important; }
.sm\:grid-w15 { width: calc(15% - 5px); margin: 0px !important; }
.sm\:grid-w20 { width: calc(20% - 5px); margin: 0px !important; }
.sm\:grid-w25 { width: calc(25% - 5px); margin: 0px !important; }
.sm\:grid-w30 { width: calc(30% - 5px); margin: 0px !important; }
.sm\:grid-w33 { width: calc(33% - 5px); margin: 0px !important; }
.sm\:grid-w35 { width: calc(35% - 5px); margin: 0px !important; }
.sm\:grid-w40 { width: calc(40% - 5px); margin: 0px !important; }
.sm\:grid-w45 { width: calc(45% - 5px); margin: 0px !important; }
.sm\:grid-w50 { width: calc(50% - 5px); margin: 0px !important; }
.sm\:grid-w55 { width: calc(55% - 5px); margin: 0px !important; }
.sm\:grid-w60 { width: calc(60% - 5px); margin: 0px !important; }
.sm\:grid-w65 { width: calc(65% - 5px); margin: 0px !important; }
.sm\:grid-w66 { width: calc(66% - 5px); margin: 0px !important; }
.sm\:grid-w70 { width: calc(70% - 5px); margin: 0px !important; }
.sm\:grid-w75 { width: calc(75% - 5px); margin: 0px !important; }
.sm\:grid-w80 { width: calc(80% - 5px); margin: 0px !important; }
.sm\:grid-w85 { width: calc(85% - 5px); margin: 0px !important; }
.sm\:grid-w90 { width: calc(90% - 5px); margin: 0px !important; }
.sm\:grid-w95 { width: calc(95% - 5px); margin: 0px !important; }
.sm\:grid-w100 { width: calc(100% - 5px); margin: 0px !important; }
}
@screen md {
.md\:grid-w10 { width: calc(10% - 5px); margin: 0px !important; }
.md\:grid-w15 { width: calc(15% - 5px); margin: 0px !important; }
.md\:grid-w20 { width: calc(20% - 5px); margin: 0px !important; }
.md\:grid-w25 { width: calc(25% - 5px); margin: 0px !important; }
.md\:grid-w30 { width: calc(30% - 5px); margin: 0px !important; }
.md\:grid-w33 { width: calc(33% - 5px); margin: 0px !important; }
.md\:grid-w35 { width: calc(35% - 5px); margin: 0px !important; }
.md\:grid-w40 { width: calc(40% - 5px); margin: 0px !important; }
.md\:grid-w45 { width: calc(45% - 5px); margin: 0px !important; }
.md\:grid-w50 { width: calc(50% - 5px); margin: 0px !important; }
.md\:grid-w55 { width: calc(55% - 5px); margin: 0px !important; }
.md\:grid-w60 { width: calc(60% - 5px); margin: 0px !important; }
.md\:grid-w65 { width: calc(65% - 5px); margin: 0px !important; }
.md\:grid-w66 { width: calc(66% - 5px); margin: 0px !important; }
.md\:grid-w70 { width: calc(70% - 5px); margin: 0px !important; }
.md\:grid-w75 { width: calc(75% - 5px); margin: 0px !important; }
.md\:grid-w80 { width: calc(80% - 5px); margin: 0px !important; }
.md\:grid-w85 { width: calc(85% - 5px); margin: 0px !important; }
.md\:grid-w90 { width: calc(90% - 5px); margin: 0px !important; }
.md\:grid-w95 { width: calc(95% - 5px); margin: 0px !important; }
.md\:grid-w100 { width: calc(100% - 5px); margin: 0px !important; }
}
@screen lg {
.lg\:grid-w10 { width: calc(10% - 5px); margin: 0px !important; }
.lg\:grid-w15 { width: calc(15% - 5px); margin: 0px !important; }
.lg\:grid-w20 { width: calc(20% - 5px); margin: 0px !important; }
.lg\:grid-w25 { width: calc(25% - 5px); margin: 0px !important; }
.lg\:grid-w30 { width: calc(30% - 5px); margin: 0px !important; }
.lg\:grid-w33 { width: calc(33% - 5px); margin: 0px !important; }
.lg\:grid-w35 { width: calc(35% - 5px); margin: 0px !important; }
.lg\:grid-w40 { width: calc(40% - 5px); margin: 0px !important; }
.lg\:grid-w45 { width: calc(45% - 5px); margin: 0px !important; }
.lg\:grid-w50 { width: calc(50% - 5px); margin: 0px !important; }
.lg\:grid-w55 { width: calc(55% - 5px); margin: 0px !important; }
.lg\:grid-w60 { width: calc(60% - 5px); margin: 0px !important; }
.lg\:grid-w65 { width: calc(65% - 5px); margin: 0px !important; }
.lg\:grid-w66 { width: calc(66% - 5px); margin: 0px !important; }
.lg\:grid-w70 { width: calc(70% - 5px); margin: 0px !important; }
.lg\:grid-w75 { width: calc(75% - 5px); margin: 0px !important; }
.lg\:grid-w80 { width: calc(80% - 5px); margin: 0px !important; }
.lg\:grid-w85 { width: calc(85% - 5px); margin: 0px !important; }
.lg\:grid-w90 { width: calc(90% - 5px); margin: 0px !important; }
.lg\:grid-w95 { width: calc(95% - 5px); margin: 0px !important; }
.lg\:grid-w100 { width: calc(100% - 5px); margin: 0px !important; }
}
@screen xl {
.xl\:grid-w10 { width: calc(10% - 5px); margin: 0px !important; }
.xl\:grid-w15 { width: calc(15% - 5px); margin: 0px !important; }
.xl\:grid-w20 { width: calc(20% - 5px); margin: 0px !important; }
.xl\:grid-w25 { width: calc(25% - 5px); margin: 0px !important; }
.xl\:grid-w30 { width: calc(30% - 5px); margin: 0px !important; }
.xl\:grid-w33 { width: calc(33% - 5px); margin: 0px !important; }
.xl\:grid-w35 { width: calc(35% - 5px); margin: 0px !important; }
.xl\:grid-w40 { width: calc(40% - 5px); margin: 0px !important; }
.xl\:grid-w45 { width: calc(45% - 5px); margin: 0px !important; }
.xl\:grid-w50 { width: calc(50% - 5px); margin: 0px !important; }
.xl\:grid-w55 { width: calc(55% - 5px); margin: 0px !important; }
.xl\:grid-w60 { width: calc(60% - 5px); margin: 0px !important; }
.xl\:grid-w65 { width: calc(65% - 5px); margin: 0px !important; }
.xl\:grid-w66 { width: calc(66% - 5px); margin: 0px !important; }
.xl\:grid-w70 { width: calc(70% - 5px); margin: 0px !important; }
.xl\:grid-w75 { width: calc(75% - 5px); margin: 0px !important; }
.xl\:grid-w80 { width: calc(80% - 5px); margin: 0px !important; }
.xl\:grid-w85 { width: calc(85% - 5px); margin: 0px !important; }
.xl\:grid-w90 { width: calc(90% - 5px); margin: 0px !important; }
.xl\:grid-w95 { width: calc(95% - 5px); margin: 0px !important; }
.xl\:grid-w100 { width: calc(100% - 5px); margin: 0px !important; }
}
@screen 2xl {
.2xl\:grid-w10 { width: calc(10% - 5px); margin: 0px !important; }
.2xl\:grid-w15 { width: calc(15% - 5px); margin: 0px !important; }
.2xl\:grid-w20 { width: calc(20% - 5px); margin: 0px !important; }
.2xl\:grid-w25 { width: calc(25% - 5px); margin: 0px !important; }
.2xl\:grid-w30 { width: calc(30% - 5px); margin: 0px !important; }
.2xl\:grid-w33 { width: calc(33% - 5px); margin: 0px !important; }
.2xl\:grid-w35 { width: calc(35% - 5px); margin: 0px !important; }
.2xl\:grid-w40 { width: calc(40% - 5px); margin: 0px !important; }
.2xl\:grid-w45 { width: calc(45% - 5px); margin: 0px !important; }
.2xl\:grid-w50 { width: calc(50% - 5px); margin: 0px !important; }
.2xl\:grid-w55 { width: calc(55% - 5px); margin: 0px !important; }
.2xl\:grid-w60 { width: calc(60% - 5px); margin: 0px !important; }
.2xl\:grid-w65 { width: calc(65% - 5px); margin: 0px !important; }
.2xl\:grid-w66 { width: calc(66% - 5px); margin: 0px !important; }
.2xl\:grid-w70 { width: calc(70% - 5px); margin: 0px !important; }
.2xl\:grid-w75 { width: calc(75% - 5px); margin: 0px !important; }
.2xl\:grid-w80 { width: calc(80% - 5px); margin: 0px !important; }
.2xl\:grid-w85 { width: calc(85% - 5px); margin: 0px !important; }
.2xl\:grid-w90 { width: calc(90% - 5px); margin: 0px !important; }
.2xl\:grid-w95 { width: calc(95% - 5px); margin: 0px !important; }
.2xl\:grid-w100 { width: calc(100% - 5px); margin: 0px !important; }
}
/* Carousel Specific Styles */
.ratio-16-9 { padding-top: 56.25%; } /* 16:9 Aspect Ratio */
.ratio-21-9 { padding-top: 42.85%; } /* 21:9 Aspect Ratio */
.ratio-32-9 { padding-top: 28.125%; } /* 32:9 Aspect Ratio */
.ratio-32-9 { padding-top: 28.125%; } /* 32:9 Aspect Ratio */
@screen sm {
.sm\:ratio-16-9 { padding-top: 56.25%; } /* 16:9 Aspect Ratio */
.sm\:ratio-21-9 { padding-top: 42.85%; } /* 21:9 Aspect Ratio */
.sm\:ratio-32-9 { padding-top: 28.125%; } /* 32:9 Aspect Ratio */
}
@screen md {
.md\:ratio-16-9 { padding-top: 56.25%; } /* 16:9 Aspect Ratio */
.md\:ratio-21-9 { padding-top: 42.85%; } /* 21:9 Aspect Ratio */
.md\:ratio-32-9 { padding-top: 28.125%; } /* 32:9 Aspect Ratio */
}
@screen lg {
.lg\:ratio-16-9 { padding-top: 56.25%; } /* 16:9 Aspect Ratio */
.lg\:ratio-21-9 { padding-top: 42.85%; } /* 21:9 Aspect Ratio */
.lg\:ratio-32-9 { padding-top: 28.125%; } /* 32:9 Aspect Ratio */
}
@screen xl {
.xl\:ratio-16-9 { padding-top: 56.25%; } /* 16:9 Aspect Ratio */
.xl\:ratio-21-9 { padding-top: 42.85%; } /* 21:9 Aspect Ratio */
.xl\:ratio-32-9 { padding-top: 28.125%; } /* 32:9 Aspect Ratio */
}
@screen 2xl {
.2xl\:ratio-16-9 { padding-top: 56.25%; } /* 16:9 Aspect Ratio */
.2xl\:ratio-21-9 { padding-top: 42.85%; } /* 21:9 Aspect Ratio */
.2xl\:ratio-32-9 { padding-top: 28.125%; } /* 32:9 Aspect Ratio */
}

File diff suppressed because one or more lines are too long

View file

@ -9,8 +9,8 @@ defaultContentLanguage = "en"
# pluralizeListTitles = "true" # hugo function useful for non-english languages, find out more in https://gohugo.io/getting-started/configuration/#pluralizelisttitles
enableRobotsTXT = true
paginate = 20
summaryLength = 30
paginate = 10
summaryLength = 0
buildDrafts = false
buildFuture = false

View file

@ -7,57 +7,57 @@ rtl = false
title = "Blowfish"
# logo = "img/logo.png"
description = "My awesome website"
# description = "My awesome website"
# copyright = "Copy, _right?_ :thinking_face:"
dateFormat = "2 January 2006"
[author]
name = "Your name here"
image = "img/blowfish_logo.png"
headline = "I'm only human"
bio = "A little bit about you"
# links = [
# { email = "mailto:hello@your_domain.com" },
# { link = "https://link-to-some-website.com/" },
# { amazon = "https://www.amazon.com/hz/wishlist/ls/wishlist-id" },
# { apple = "https://www.apple.com" },
# { blogger = "https://username.blogspot.com/" },
# { codepen = "https://codepen.io/username" },
# { dev = "https://dev.to/username" },
# { discord = "https://discord.gg/invitecode" },
# { dribbble = "https://dribbble.com/username" },
# { facebook = "https://facebook.com/username" },
# { flickr = "https://www.flickr.com/photos/username/" },
# { foursquare = "https://foursquare.com/username" },
# { github = "https://github.com/username" },
# { gitlab = "https://gitlab.com/username" },
# { google = "https://www.google.com/" },
# { hashnode = "https://username.hashnode.dev" },
# { instagram = "https://instagram.com/username" },
# { keybase = "https://keybase.io/username" },
# { kickstarter = "https://www.kickstarter.com/profile/username" },
# { lastfm = "https://lastfm.com/user/username" },
# { linkedin = "https://linkedin.com/in/username" },
# { mastodon = "https://mastodon.instance/@username" },
# { medium = "https://medium.com/username" },
# { microsoft = "https://www.microsoft.com/" },
# { orcid = "https://orcid.org/userid" },
# { patreon = "https://www.patreon.com/username" },
# { pinterest = "https://pinterest.com/username" },
# { reddit = "https://reddit.com/user/username" },
# { researchgate = "https://www.researchgate.net/profile/username" },
# { slack = "https://workspace.url/team/userid" },
# { snapchat = "https://snapchat.com/add/username" },
# { soundcloud = "https://soundcloud.com/username" },
# { stack-overflow = "https://stackoverflow.com/users/userid/username" },
# { steam = "https://steamcommunity.com/profiles/userid" },
# { telegram = "https://t.me/username" },
# { tiktok = "https://tiktok.com/@username" },
# { tumblr = "https://username.tumblr.com" },
# { twitch = "https://twitch.tv/username" },
# { twitter = "https://twitter.com/username" },
# { whatsapp = "https://wa.me/phone-number" },
# { youtube = "https://youtube.com/username" },
# { ko-fi = "https://ko-fi.com/username" },
# ]
# [author]
# name = "Your name here"
# image = "img/blowfish_logo.png"
# headline = "I'm only human"
# bio = "A little bit about you"
# links = [
# { email = "mailto:hello@your_domain.com" },
# { link = "https://link-to-some-website.com/" },
# { amazon = "https://www.amazon.com/hz/wishlist/ls/wishlist-id" },
# { apple = "https://www.apple.com" },
# { blogger = "https://username.blogspot.com/" },
# { codepen = "https://codepen.io/username" },
# { dev = "https://dev.to/username" },
# { discord = "https://discord.gg/invitecode" },
# { dribbble = "https://dribbble.com/username" },
# { facebook = "https://facebook.com/username" },
# { flickr = "https://www.flickr.com/photos/username/" },
# { foursquare = "https://foursquare.com/username" },
# { github = "https://github.com/username" },
# { gitlab = "https://gitlab.com/username" },
# { google = "https://www.google.com/" },
# { hashnode = "https://username.hashnode.dev" },
# { instagram = "https://instagram.com/username" },
# { keybase = "https://keybase.io/username" },
# { kickstarter = "https://www.kickstarter.com/profile/username" },
# { lastfm = "https://lastfm.com/user/username" },
# { linkedin = "https://linkedin.com/in/username" },
# { mastodon = "https://mastodon.instance/@username" },
# { medium = "https://medium.com/username" },
# { microsoft = "https://www.microsoft.com/" },
# { orcid = "https://orcid.org/userid" },
# { patreon = "https://www.patreon.com/username" },
# { pinterest = "https://pinterest.com/username" },
# { reddit = "https://reddit.com/user/username" },
# { researchgate = "https://www.researchgate.net/profile/username" },
# { slack = "https://workspace.url/team/userid" },
# { snapchat = "https://snapchat.com/add/username" },
# { soundcloud = "https://soundcloud.com/username" },
# { stack-overflow = "https://stackoverflow.com/users/userid/username" },
# { steam = "https://steamcommunity.com/profiles/userid" },
# { telegram = "https://t.me/username" },
# { tiktok = "https://tiktok.com/@username" },
# { tumblr = "https://username.tumblr.com" },
# { twitch = "https://twitch.tv/username" },
# { twitter = "https://twitter.com/username" },
# { whatsapp = "https://wa.me/phone-number" },
# { youtube = "https://youtube.com/username" },
# { ko-fi = "https://ko-fi.com/username" },
# ]

View file

@ -9,13 +9,13 @@ colorScheme = "blowfish"
defaultAppearance = "light" # valid options: light or dark
autoSwitchAppearance = true
enableSearch = true
enableCodeCopy = true
enableSearch = false
enableCodeCopy = false
# mainSections = ["section1", "section2"]
# robots = ""
# disableImageOptimization = false
disableImageOptimization = false
# defaultBackgroundImage = "IMAGE.jpg" # used as default for background images
@ -27,10 +27,10 @@ enableCodeCopy = true
layout = "basic" # valid options: basic, fixed
[footer]
# showMenu = true
showMenu = true
showCopyright = true
showThemeAttribution = true
showAppearanceSwitcher = true
showAppearanceSwitcher = false
showScrollToTop = true
[homepage]
@ -46,17 +46,17 @@ enableCodeCopy = true
[article]
showDate = true
#showViews = true
#showLikes = true
showViews = false
showLikes = false
showDateUpdated = false
showAuthor = true
showHero = true
heroStyle = "basic" # valid options: basic, big, background, thumbAndBackground
layoutBackgroundBlur = false # only used when heroStyle equals background or thumbAndBackground
showHero = false
# heroStyle = "basic" # 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 = true
showBreadcrumbs = false
showDraftLabel = true
showEdit = true
showEdit = false
# editURL = "https://github.com/username/repo/"
editAppendPath = true
seriesOpened = false
@ -64,22 +64,22 @@ enableCodeCopy = true
showPagination = true
invertPagination = false
showReadingTime = true
showTableOfContents = true
showTaxonomies = false
showAuthorsBadges = false
showTableOfContents = false
showTaxonomies = false
showAuthorsBadges = false
showWordCount = true
showSummary = true
sharingLinks = [ "linkedin", "twitter", "reddit", "pinterest", "facebook", "email"]
# sharingLinks = [ "linkedin", "twitter", "reddit", "pinterest", "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
showHero = false
# 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
showViews = false
showLikes = false
showTableOfContents = false
showCards = false
groupByYear = true
@ -88,28 +88,28 @@ enableCodeCopy = true
constrainItemsWidth = false
[sitemap]
excludedKinds = []
excludedKinds = ["taxonomy", "term"]
[taxonomy]
showTermCount = true
#showHero = true
#heroStyle = "background" # valid options: basic, big, background, thumbAndBackground
showHero = false
# heroStyle = "background" # valid options: basic, big, background, thumbAndBackground
showBreadcrumbs = false
#showViews = false
#showLikes = false
#showTableOfContents = true
#cardView = false
showViews = false
showLikes = false
showTableOfContents = false
cardView = false
[term]
#showHero = true
#heroStyle = "background" # valid options: basic, big, background, thumbAndBackground
showHero = false
# heroStyle = "background" # valid options: basic, big, background, thumbAndBackground
showBreadcrumbs = false
#showViews = false
#showLikes = false
#showTableOfContents = true
#groupByYear = false
#cardViewScreenWidth = false
#cardView = false
showViews = false
showLikes = false
showTableOfContents = true
groupByYear = false
cardView = false
cardViewScreenWidth = false
[firebase]
# apiKey = "XXXXXX"

View file

@ -15,13 +15,13 @@ enableCodeCopy = true
mainSections = ["docs"]
# robots = ""
disableImageOptimization = true
disableImageOptimization = false
defaultBackgroundImage = "/img/bg.jpg"
highlightCurrentMenuArea = true
smartTOC = true
smartTOCHideUnfocusedChildren = false
smartTOCHideUnfocusedChildren = true
[header]
layout = "fixed" # valid options: basic, fixed

View file

@ -45,7 +45,7 @@ Note that the variable names provided in this table use dot notation to simplify
## Thumbnails
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.
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 but 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.
@ -143,7 +143,7 @@ Many of the article defaults here can be overridden on a per article basis by sp
| `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 |
| `defaultBackgroundImage` | _Not set_ | Marks menu entries in the main manu when selected |
| `defaultBackgrouclearndImage` | _Not set_ | Marks menu entries in the main manu when selected |
| `smartTOC` | _Not set_ | Activate smart Table of Contents, items in view will be highlighted. |
| `smartTOCHideUnfocusedChildren` | _Not set_ | When smart Table of Contents is turned on, this will hide deeper levels of the table when they are not in focus. |
@ -169,8 +169,8 @@ Many of the article defaults here can be overridden on a per article basis by sp
| `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.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 |
@ -202,6 +202,7 @@ Many of the article defaults here can be overridden on a per article basis by sp
| `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.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). |
| `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
@ -222,6 +223,7 @@ Many of the article defaults here can be overridden on a per article basis by sp
| `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. |
| `list.constrainItemsWidth` | `false` | Limit item width to `prose` to increase readability. Useful when no feature images are available. |
| `list.showTableOfContents` | `false` | Whether or not the table of contents is displayed on articles. |
### Sitemap

View file

@ -51,7 +51,7 @@ To enable the Background layout, set `homepage.layout = "background"` and `homep
## 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.
The card layout is an extension of the page layout. It provides the same level of flexibility by also displaying your markdown content and adds a card image to display visual content.
<img class="thumbnailshadow" src="img/home-card.png"/>
@ -86,4 +86,4 @@ Blowfish was built so it would be easy to add visual support to your articles. I
## 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.
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.

View file

@ -15,30 +15,53 @@ In addition to all the [default Hugo shortcodes](https://gohugo.io/content-manag
`alert` outputs its contents as a stylised message box within your article. It's useful for drawing attention to important information that you don't want the reader to miss.
<!-- prettier-ignore-start -->
| Parameter | Description |
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `icon` | **Optional.** the icon to display on the left side.<br>**Default:** `exclaimation triangle icon` (Check out the [icon shortcode](#icon) for more details on using icons.) |
| `iconColor` | **Optional.** the color for the icon in basic CSS style.<br>Can be either hex values (`#FFFFFF`) or color names (`white`)<br>By default chosen based on the current color theme . |
| `cardColor` | **Optional.** the color for the card background in basic CSS style.<br>Can be either hex values (`#FFFFFF`) or color names (`white`)<br>By default chosen based on the current color theme . |
| `textColor` | **Optional.** the color for the text in basic CSS style.<br>Can be either hex values (`#FFFFFF`) or color names (`white`)<br>By default chosen based on the current color theme . |
<!-- prettier-ignore-end -->
The input is written in Markdown so you can format it however you please.
By default, the alert is presented with an exclaimation triangle icon. To change the icon, include the icon name in the shortcode. Check out the [icon shortcode](#icon) for more details on using icons.
**Example:**
**Example 1:** No params
```md
{{</* alert */>}}
**Warning!** This action is destructive!
{{</* /alert */>}}
{{</* alert "twitter" */>}}
Don't forget to [follow me](https://twitter.com/nunocoracao) on Twitter.
{{</* /alert */>}}
```
{{< alert >}}
**Warning!** This action is destructive!
{{< /alert >}}
&nbsp;
**Example 2:** Unnamed param
```md
{{</* alert "twitter" */>}}
Don't forget to [follow me](https://twitter.com/nunocoracao) on Twitter.
{{</* /alert */>}}
```
{{< alert "twitter" >}}
Don't forget to [follow me](https://twitter.com/nunocoracao) on Twitter.
{{< /alert >}}
**Example 3:** Named params
```md
{{</* alert icon="fire" cardColor="#e63946" iconColor="#1d3557" textColor="#f1faee" */>}}
This is an error!
{{</* /alert */>}}
```
{{< alert icon="fire" cardColor="#e63946" iconColor="#1d3557" textColor="#f1faee" >}}
This is an error!
{{< /alert >}}
<br/><br/><br/>
## Article
@ -101,12 +124,12 @@ Call to action
`carousel` is used to showcase multiple images in an interactive and visually appealing way. This allows a user to slide through multiple images while only taking up the vertical space of a single one. All images are displayed using the full width of the parent component and using one of the predefined aspect ratios of `16:9`, `21:9` or `32:9`.
<!-- prettier-ignore-start -->
| Parameter | Description |
| ---------------- | ----------------------------------------------------------------------------------------------------------------- |
| `images` | **Required.** A regex string to match image names. |
| `aspectRatio` | **Optional.** The aspect ratio for the carousel. Either `16-9`, `21-9` or `32-9`. It is set to `16-9` by default. |
| Parameter | Description |
| ------------- | ----------------------------------------------------------------------------------------------------------------- |
| `images` | **Required.** A regex string to match image names. |
| `aspectRatio` | **Optional.** The aspect ratio for the carousel. Either `16-9`, `21-9` or `32-9`. It is set to `16-9` by default. |
| `interval` | **Optional.** The interval for the auto-scrooling, specified in milliseconds. Defaults to `2000` (2s) |
<!-- prettier-ignore-end -->
**Example 1:** 16:9 aspect ratio and verbose list of images
@ -120,10 +143,10 @@ Call to action
**Example 2:** 21:9 aspect ratio and regex-ed list of images
```md
{{</* carousel images="gallery/*" aspectRatio="21-9" */>}}
{{</* carousel images="gallery/*" aspectRatio="21-9" interval="2500" */>}}
```
{{< carousel images="gallery/*" aspectRatio="21-9" >}}
{{< carousel images="gallery/*" aspectRatio="21-9" interval="2500" >}}
<br/><br/><br/>
@ -212,9 +235,9 @@ Blowfish also supports automatic conversion of images included using standard Ma
`gallery` allows you to showcase multiple images at once, in a responsive manner with more varied and interesting layouts.
In order to add images to the gallery, use `img` tags for each image and add `class="grid-wXX"` in order for the gallery to be able to identify the column width for each image. The widths available by default start at 10% and go all the way to 100% in 5% increments. For example, to set the width to 65%, set the class to `grid-w65`. Additionally, widths for 33% and 66% are also available in order to build galleries with 3 cols.
In order to add images to the gallery, use `img` tags for each image and add `class="grid-wXX"` in order for the gallery to be able to identify the column width for each image. The widths available by default start at 10% and go all the way to 100% in 5% increments. For example, to set the width to 65%, set the class to `grid-w65`. Additionally, widths for 33% and 66% are also available in order to build galleries with 3 cols. You can also leverage tailwind's responsive indicators to have a reponsive grid.
**Example:**
**Example 1: normal gallery**
```md
{{</* gallery */>}}
@ -240,6 +263,33 @@ In order to add images to the gallery, use `img` tags for each image and add `cl
<br/><br/><br/>
**Example 2: responsive gallery**
```md
{{</* gallery */>}}
<img src="gallery/01.jpg" class="grid-w33" />
<img src="gallery/02.jpg" class="grid-w33" />
<img src="gallery/03.jpg" class="grid-w33" />
<img src="gallery/04.jpg" class="grid-w33" />
<img src="gallery/05.jpg" class="grid-w33" />
<img src="gallery/06.jpg" class="grid-w33" />
<img src="gallery/07.jpg" class="grid-w33" />
{{</* /gallery */>}}
```
{{< gallery >}}
<img src="gallery/01.jpg" class="grid-w50 md:grid-w33 xl:grid-w25" />
<img src="gallery/02.jpg" class="grid-w50 md:grid-w33 xl:grid-w25" />
<img src="gallery/03.jpg" class="grid-w50 md:grid-w33 xl:grid-w25" />
<img src="gallery/04.jpg" class="grid-w50 md:grid-w33 xl:grid-w25" />
<img src="gallery/05.jpg" class="grid-w50 md:grid-w33 xl:grid-w25" />
<img src="gallery/06.jpg" class="grid-w50 md:grid-w33 xl:grid-w25" />
<img src="gallery/07.jpg" class="grid-w50 md:grid-w33 xl:grid-w25" />
{{< /gallery >}}
<br/><br/><br/>
## GitHub Card
`github` allows you to quickly link a github repository, all while showing and updating in realtime stats about it, such as the number of stars and forks it has.
@ -325,11 +375,16 @@ When life gives you lemons, make lemonade.
`List` will display a list of recent articles. This shortcode requires a limit value to constraint the list. Additionally, it supports a `where` and a `value` in order to filter articles by their parameters. Note that this shortcode will not display its parent page but it will count for the limit value.
<!-- prettier-ignore-start -->
| Parameter | Description |
| --------- | ------------------------------------------------------- |
| `limit` | **Required.** the number of recent articles to display. |
| `where` | the number of recent articles to display. |
| `value` | the number of recent articles to display. |
| Parameter | Description |
| --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `limit` | **Required.** the number of recent articles to display. |
| `title` | Optional title for the list, default is `Recent` |
| `where` | The variable to be used for the query of articles e.g. `Type` |
| `value` | The value that will need to match the parameter defined in `where` for the query of articles e.g. for `where` == `Type` a valid value could be `sample` |
{{< alert >}}
The `where` and `value` values are used in the following query `where .Site.RegularPages $where $value` in the code of the shortcode. Check [Hugo docs](https://gohugo.io/variables/page/) to learn more about which parameters are available to use.
{{</ alert >}}
<!-- prettier-ignore-end -->
@ -344,10 +399,10 @@ When life gives you lemons, make lemonade.
**Example #2:**
```md
{{</* list limit=2 where="Type" value="sample" */>}}
{{</* list title="Samples" limit=5 where="Type" value="sample" */>}}
```
{{< list limit=2 where="Type" value="sample">}}
{{< list title="Samples" limit=5 where="Type" value="sample">}}
<br/><br/><br/>
@ -392,11 +447,96 @@ You can see some additional Mermaid examples on the [diagrams and flowcharts sam
**Output**
{{< swatches "#64748b" "#3b82f6" "#06b6d4" >}}
<br/><br/><br/>
## Timeline
The `timeline` creates a visual timeline that can be used in different use-cases, e.g. professional experience, a project's achievements, etc. The `timeline` shortcode relies on the `timelineItem` sub-shortcode to define each item within the main timeline. Each item can have the following properties.
<!-- prettier-ignore-start -->
| Parameter | Description |
| ----------- | -------------------------------------------- |
| `icon` | the icon to be used in the timeline visuals. |
| `header` | header for each entry |
| `badge` | text to place within the top righ badge |
| `subheader` | entry's subheader |
<!-- prettier-ignore-end -->
**Example:**
```md
{{</* timeline */>}}
{{</* timelineItem icon="github" header="header" badge="badge test" subheader="subheader" */>}}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus non magna ex. Donec sollicitudin ut lorem quis lobortis. Nam ac ipsum libero. Sed a ex eget ipsum tincidunt venenatis quis sed nisl. Pellentesque sed urna vel odio consequat tincidunt id ut purus. Nam sollicitudin est sed dui interdum rhoncus.
{{</* /timelineItem */>}}
{{</* timelineItem icon="code" header="Another Awesome Header" badge="date - present" subheader="Awesome Subheader" */>}}
With html code
<ul>
<li>Coffee</li>
<li>Tea</li>
<li>Milk</li>
</ul>
{{</* /timelineItem */>}}
{{</* timelineItem icon="star" header="Shortcodes" badge="AWESOME" */>}}
With other shortcodes
{{</* gallery */>}}
<img src="gallery/01.jpg" class="grid-w33" />
<img src="gallery/02.jpg" class="grid-w33" />
<img src="gallery/03.jpg" class="grid-w33" />
<img src="gallery/04.jpg" class="grid-w33" />
<img src="gallery/05.jpg" class="grid-w33" />
<img src="gallery/06.jpg" class="grid-w33" />
<img src="gallery/07.jpg" class="grid-w33" />
{{</* /gallery */>}}
{{</* /timelineItem */>}}
{{</* /timeline */>}}
```
{{< timeline >}}
{{< timelineItem icon="github" header="header" badge="badge test" subheader="subheader" >}}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus non magna ex. Donec sollicitudin ut lorem quis lobortis. Nam ac ipsum libero. Sed a ex eget ipsum tincidunt venenatis quis sed nisl. Pellentesque sed urna vel odio consequat tincidunt id ut purus. Nam sollicitudin est sed dui interdum rhoncus.
{{</ timelineItem >}}
{{< timelineItem icon="code" header="Another Awesome Header" badge="date - present" subheader="Awesome Subheader">}}
With html code
<ul>
<li>Coffee</li>
<li>Tea</li>
<li>Milk</li>
</ul>
{{</ timelineItem >}}
{{< timelineItem icon="star" header="Shortcodes" badge="AWESOME" >}}
With other shortcodes
{{< gallery >}}
<img src="gallery/01.jpg" class="grid-w33" />
<img src="gallery/02.jpg" class="grid-w33" />
<img src="gallery/03.jpg" class="grid-w33" />
<img src="gallery/04.jpg" class="grid-w33" />
<img src="gallery/05.jpg" class="grid-w33" />
<img src="gallery/06.jpg" class="grid-w33" />
<img src="gallery/07.jpg" class="grid-w33" />
{{< /gallery >}}
{{</ timelineItem >}}
{{</ timeline >}}
<br/><br/><br/>
## TypeIt
[TypeIt](https://www.typeitjs.com) is the most versatile JavaScript tool for creating typewriter effects on the planet. With a straightforward configuration, it allows you to type single or multiple strings that break lines, delete & replace each other, and it even handles strings that contain complex HTML.
[TypeIt](https://www.typeitjs.com) is the most versatile JavaScript tool for creating typewriter effects on the planet. With a straightforward configuration, it allows you to type single or multiple strings that break lines, delete & replace each other, and it even handles strings that contain complex HTML.
Blowfish implements a sub-set of TypeIt features using a `shortcode`. Write your text within the `typeit` shortcode and use the following parameters to configure the behavior you want.

View file

@ -5,6 +5,7 @@ description: "Guide to Chart.js usage in Blowfish"
summary: "Blowfish includes Chart.js for powerful charts and data visualisations."
tags: ["chart", "sample", "graph", "shortcodes"]
showDate: false
type: 'sample'
---
Blowfish includes support for Chart.js using the `chart` shortcode. Simply wrap the chart markup within the shortcode. Blowfish automatically themes charts to match the configured `colorScheme` parameter, however the colours can be customised using normal Chart.js syntax.

View file

@ -4,6 +4,7 @@ date: 2019-03-06
description: "Guide to Mermaid usage in Blowfish"
summary: "It's easy to add diagrams and flowcharts to articles using Mermaid."
tags: ["mermaid", "sample", "diagram", "shortcodes"]
type: 'sample'
---
Mermaid diagrams are supported in Blowfish using the `mermaid` shortcode. Simply wrap the diagram markup within the shortcode. Blowfish automatically themes Mermaid diagrams to match the configured `colorScheme` parameter.

View file

@ -9,6 +9,7 @@ showViews: false
_build:
render: "false"
list: "local"
type: 'sample'
---
This page uses the `externalUrl` front matter parameter to link to an article outside of this Hugo website.

View file

@ -6,6 +6,7 @@ draft: false
description: "Icon support in Blowfish."
slug: "icons"
tags: ["icons", "sample", "shortcodes"]
type: 'sample'
---
Blowfish has built-in support for a number of [FontAwesome 6](https://fontawesome.com/icons) icons. These can be included in your website through either the [icon partial]({{< ref "docs/partials#icon" >}}) or [icon shortcode]({{< ref "docs/shortcodes#icon" >}}).

View file

@ -3,6 +3,7 @@ title: "Markdown"
date: 2019-03-11
description: "Sample article showcasing basic Markdown syntax and formatting for HTML elements."
tags: ["markdown", "css", "html", "sample"]
type: 'sample'
---
This article offers a sample of basic Markdown formatting that can be used in Blowfish, also it shows how some basic HTML elements are decorated.

View file

@ -3,6 +3,7 @@ title: Mathematical notation
date: 2019-03-08
description: A brief sample of mathematical notation in Blowfish.
tags: ["sample", "katex", "maths", "shortcodes"]
type: 'sample'
---
KaTeX can be used to render mathematical notation within articles.

View file

@ -9,6 +9,7 @@ showAuthor: false
authors:
- "nunocoracao"
- "secondauthor"
type: 'sample'
---
This is an example of how an article with multiple authors will look like.

View file

@ -7,6 +7,7 @@ description: "Lorem Ipsum Dolor Si Amet"
tags: ["markdown", "text", "sample", "latin"]
showDateUpdated: true
xml: false
type: 'sample'
---
Lorem est tota propiore conpellat pectoribus de pectora summo. <!--more-->Redit teque digerit hominumque toris verebor lumina non cervice subde tollit usus habet Arctonque, furores quas nec ferunt. Quoque montibus nunc caluere tempus inhospita parcite confusaque translucet patri vestro qui optatis lumine cognoscere flos nubis! Fronde ipsamque patulos Dryopen deorum.

View file

@ -4,6 +4,7 @@ date: 2019-03-10
description: "A brief description of Hugo Shortcodes"
summary: "This is an _example_ of a **rich** content summary."
tags: ["shortcodes", "privacy", "sample", "gist", "twitter", "youtube", "vimeo"]
type: 'sample'
---
Hugo ships with several [built-in shortcodes](https://gohugo.io/content-management/shortcodes/#use-hugos-built-in-shortcodes) for rich content, along with a [privacy config](https://gohugo.io/about/hugo-and-gdpr/) and a set of _simple shortcodes_ that enable static and no-JS versions of various social media embeds.

View file

@ -6,6 +6,7 @@ description: "Turn on thumbnails for your articles."
slug: "thumbnail_sample"
tags: ["thumbnail", "sample"]
summary: "A quick example of how to start using Thumbnails in your artciles."
type: 'sample'
---
A quick example of how to start using Thumbnails in your articles.

View file

@ -63,6 +63,7 @@ Real websites that are built with Blowfish.
| [alejandro-ao.com](https://alejandro-ao.com/) | Personal site |
| [adir1.com](https://adir1.com/) | Personal site |
| [niklas-hartmann-dev.de](https://niklas-hartmann-dev.de/) | Personal site |
| [blog.muffn.io](https://blog.muffn.io/) | Personal site |
{{< alert >}}

Binary file not shown.

After

Width:  |  Height:  |  Size: 79 KiB

View file

@ -12,9 +12,9 @@ article:
word_count:
one: "{{ .Count }} mot"
other: "{{ .Count }} mots"
part_of_series: "This article is part of a series."
part: "Part"
this_article: "This Article"
part_of_series: "Cet article fait partie d'une série."
part: "Partie"
this_article: "Cet article"
author:
byline_title: "Auteur"

View file

@ -14,13 +14,13 @@
</div>
<div class="mt-6 sm:mt-16 lg:mt-0">
<div class="-mr-48 pl-4 sm:pl-6 md:-mr-16 lg:relative lg:m-0 lg:h-full lg:px-0">
{{ with .Site.Params.homepage.homepageImage }}
{{ $homepageImage := resources.Get . }}
{{ $homepageImage := "" }}
{{ with .Site.Params.defaultBackgroundImage }}{{ $homepageImage = resources.Get . }}{{ end }}
{{ with .Site.Params.homepage.homepageImage }}{{ $homepageImage = resources.Get . }}{{ end }}
{{ if $homepageImage }}
<img class="w-full rounded-xl shadow-xl lg:absolute lg:left-0 lg:h-full lg:w-auto lg:max-w-none"
src="{{ $homepageImage.RelPermalink }}">
{{ end }}
{{ end }}
</div>
</div>
</div>

View file

@ -4,15 +4,15 @@
<div class="mx-auto max-w-7xl p-0">
<div class="relative shadow-xl sm:overflow-hidden rounded-2xl">
<div class="absolute inset-0">
{{ with .Site.Params.homepage.homepageImage }}
{{ $homepageImage := resources.Get . }}
{{ $homepageImage := "" }}
{{ with .Site.Params.defaultBackgroundImage }}{{ $homepageImage = resources.Get . }}{{ end }}
{{ with .Site.Params.homepage.homepageImage }}{{ $homepageImage = resources.Get . }}{{ end }}
{{ if $homepageImage }}
<img class="h-full w-full object-cover m-0 nozoom" src="{{ $homepageImage.RelPermalink }}">
<div
class="absolute inset-0 bg-gradient-to-r from-primary-500 to-secondary-700 dark:from-primary-600 dark:to-secondary-800 mix-blend-multiply">
</div>
{{ end }}
{{ end }}
</div>
<div class="relative px-4 py-16 sm:px-6 sm:py-24 lg:py-32 lg:px-8 flex flex-col items-center justify-center text-center">
{{ with .Site.Author.image }}

View file

@ -54,7 +54,7 @@
{{ end }}
{{/* tw-elements */}}
{{ if .Page.HasShortcode "carousel" }}
{{ if or (.Page.HasShortcode "carousel") (.Page.HasShortcode "timeline")}}
{{ $twelementsLib := resources.Get "lib/tw-elements/index.min.js" }}
<script defer src="{{ $twelementsLib.RelPermalink }}" integrity="{{ $twelementsLib.Data.Integrity }}"></script>
{{ end }}

View file

@ -1,8 +1,39 @@
<div class="flex px-4 py-3 rounded-md bg-primary-100 dark:bg-primary-900">
<span class="text-primary-400 ltr:pr-3 rtl:pl-3 flex items-center">
{{ partial "icon.html" (.Get 0 | default "triangle-exclamation") }}
{{ if .IsNamedParams }}
{{ $.Scratch.Set "icon" (default "triangle-exclamation" (.Get "icon") ) }}
{{ $.Scratch.Set "cardColor" (.Get "cardColor") }}
{{ $.Scratch.Set "iconColor" (.Get "iconColor") }}
{{ $.Scratch.Set "textColor" (.Get "textColor") }}
{{ else }}
{{ $.Scratch.Set "icon" (default "triangle-exclamation" (.Get 0) ) }}
{{ end }}
<div
{{ if not ($.Scratch.Get "cardColor") }}
class="flex px-4 py-3 rounded-md bg-primary-100 dark:bg-primary-900"
{{ else }}
class="flex px-4 py-3 rounded-md"
style="background-color: {{ $.Scratch.Get "cardColor" }}"
{{ end }}>
<span
{{ if not ($.Scratch.Get "iconColor") }}
class="text-primary-400 ltr:pr-3 rtl:pl-3 flex items-center"
{{ else }}
class="ltr:pr-3 rtl:pl-3 flex items-center"
style="color: {{ $.Scratch.Get "iconColor" }}"
{{ end }}>
{{ partial "icon.html" ($.Scratch.Get "icon") }}
</span>
<span class="dark:text-neutral-300">
<span
{{ if not ($.Scratch.Get "textColor") }}
class="dark:text-neutral-300"
{{ else }}
style="color: {{ $.Scratch.Get "textColor" }}"
{{ end }}>
{{- .Inner | markdownify -}}
</span>
</div>

View file

@ -2,6 +2,7 @@
{{ $id := delimit (slice "gallery" $time) "-" }}
{{ $aspect := default "16-9" (.Get "aspectRatio") }}
{{ $images := .Page.Resources.Match (.Get "images") }}
{{ $interval := default "2000" (.Get "interval") }}
<div id="{{ $id }}" class="carousel slide relative" data-bs-ride="carousel">
<div class="carousel-indicators absolute right-0 bottom-0 left-0 flex justify-center p-0 mb-2">
@ -23,6 +24,7 @@
<div class="carousel-item {{ if eq $num 0 }} active {{ end }} relative float-left w-full ratio-{{ $aspect }} single_hero_background"
style="background-image:url({{ . }})"
data-bs-interval="{{ $interval }}"
></div>
{{ $num = add $num 1 }}
{{ end }}

View file

@ -20,9 +20,9 @@
<div class="m-0 mt-2 flex items-center">
<span class="mr-1 inline-block h-3 w-3 rounded-full" style="background-color: {{- index $githubColors .language -}}"></span>
<span class="mr-1 inline-block h-3 w-3 rounded-full" style="background-color: {{ if .language }} {{- index $githubColors .language -}} {{ else }} #0077b6 {{ end }}"></span>
<div class="m-0 mr-5 text-md text-neutral-800 dark:text-neutral">
{{ .language }}
{{ if .language }} {{ .language }} {{ else }} null {{ end }}
</div>
<span class="text-md mr-1 text-neutral-800 dark:text-neutral">

View file

@ -1,12 +1,13 @@
{{ $limit := .Get "limit" }}
{{ $limit := .Get "limit" | default 1 }}
{{ $title := .Get "title" | default (i18n "shortcode.recent_articles" | emojify) }}
{{ $parent := .Page.RelPermalink }}
{{ $where := .Get "where" }}
{{ $value := .Get "value" }}
<h2 class="mt-20 text-2xl font-extrabold mb-10">{{ i18n "shortcode.recent_articles" | emojify }}</h2>
<h2 class="mt-20 text-2xl font-extrabold mb-10">{{ $title }}</h2>
<section class="space-y-10 w-full mt-10 mb-10">
{{ if $where }}
{{ range ( where .Site.RegularPages $where $value | first 1 ) }}
{{ range ( where .Site.RegularPages $where $value | first $limit ) }}
{{ if not (eq .RelPermalink $parent) }}
{{ partial "article-link/simple.html" . }}
{{ end }}

View file

@ -0,0 +1,3 @@
<ol class="border-l-2 list-none border-primary-500 dark:border-primary-300">
{{- .Inner -}}
</ol>

View file

@ -0,0 +1,32 @@
{{ $icon := .Get "icon" | default "check" }}
{{ $header := .Get "header" }}
{{ $badge := .Get "badge" }}
{{ $subheader := .Get "subheader" }}
{{ $text := .Get "text" }}
<li class="list-none">
<div class="flex flex-start">
<div class="bg-primary-500 dark:bg-primary-300 text-neutral-50 dark:text-neutral-700 min-w-[30px] h-8 text-2xl flex items-center justify-center rounded-full -ml-12 mt-5">
{{ partial "icon" $icon }}
</div>
<div class="block p-6 rounded-lg shadow-2xl min-w-full ml-6 mb-10 backdrop-blur">
<div class="flex justify-between">
{{ if $header }}
<h2 class="mt-0">
{{ $header }}
</h2>
{{ end }}
{{ if $badge }}
<h3 class="">
{{ partial "badge" $badge}}
</h3>
{{ end }}
</div>
{{ if $subheader }}
<h4 class="mt-0">
{{ $subheader }}
</h4>
{{ end }}
<p class="text-gray-700 mb-6">{{- .Inner -}}</p>
</div>
</div>
</li>

134
package-lock.json generated
View file

@ -1,23 +1,23 @@
{
"name": "hugo-blowfish-theme",
"version": "2.25.0",
"version": "2.26.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "hugo-blowfish-theme",
"version": "2.25.0",
"version": "2.26.0",
"hasInstallScript": true,
"license": "MIT",
"dependencies": {
"@headlessui/react": "^1.7.7",
"@heroicons/react": "^2.0.13",
"@headlessui/react": "^1.7.8",
"@heroicons/react": "^2.0.14",
"@tailwindcss/forms": "^0.5.3",
"commander": "^10.0.0"
},
"devDependencies": {
"@tailwindcss/typography": "^0.5.9",
"chart.js": "^4.1.2",
"chart.js": "^4.2.0",
"fuse.js": "^6.6.2",
"jquery": "^3.6.3",
"katex": "^0.16.4",
@ -25,8 +25,8 @@
"packery": "^2.1.2",
"prettier": "^2.8.3",
"prettier-plugin-go-template": "^0.0.13",
"prettier-plugin-tailwindcss": "^0.2.1",
"rimraf": "^4.1.1",
"prettier-plugin-tailwindcss": "^0.2.2",
"rimraf": "^4.1.2",
"tailwindcss": "^3.2.4",
"tw-elements": "^1.0.0-alpha13",
"typeit": "^8.7.1",
@ -40,9 +40,9 @@
"dev": true
},
"node_modules/@headlessui/react": {
"version": "1.7.7",
"resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.7.tgz",
"integrity": "sha512-BqDOd/tB9u2tA0T3Z0fn18ktw+KbVwMnkxxsGPIH2hzssrQhKB5n/6StZOyvLYP/FsYtvuXfi9I0YowKPv2c1w==",
"version": "1.7.8",
"resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.8.tgz",
"integrity": "sha512-zcwb0kd7L05hxmoAMIioEaOn235Dg0fUO+iGbLPgLVSjzl/l39V6DTpC2Df49PE5aG5/f5q0PZ9ZHZ78ENNV+A==",
"dependencies": {
"client-only": "^0.0.1"
},
@ -55,9 +55,9 @@
}
},
"node_modules/@heroicons/react": {
"version": "2.0.13",
"resolved": "https://registry.npmjs.org/@heroicons/react/-/react-2.0.13.tgz",
"integrity": "sha512-iSN5XwmagrnirWlYEWNPdCDj9aRYVD/lnK3JlsC9/+fqGF80k8C7rl+1HCvBX0dBoagKqOFBs6fMhJJ1hOg1EQ==",
"version": "2.0.14",
"resolved": "https://registry.npmjs.org/@heroicons/react/-/react-2.0.14.tgz",
"integrity": "sha512-eFL4if6L7woL1fUvk/jjXx4z9NxVESHHrQnEd2qKVelTFTIr/3VLGWdPb0biia9ZVe26P0JSs/xmOlRNur3SrQ==",
"peerDependencies": {
"react": ">= 16"
}
@ -210,9 +210,9 @@
}
},
"node_modules/chart.js": {
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.1.2.tgz",
"integrity": "sha512-9L1w6WLPq6ztiWVVOYtDtpo0CUsBKDWPrUEdwChAyzczaikqeSwNKEv3QpJ7EO4ICcLSi6UDVhgvcnUhRJidRA==",
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.2.0.tgz",
"integrity": "sha512-wbtcV+QKeH0F7gQZaCJEIpsNriFheacouJQTVIjITi3eQA8bTlIBoknz0+dgV79aeKLNMAX+nDslIVE/nJ3rzA==",
"dev": true,
"dependencies": {
"@kurkle/color": "^0.3.0"
@ -1415,15 +1415,73 @@
}
},
"node_modules/prettier-plugin-tailwindcss": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.2.1.tgz",
"integrity": "sha512-aIO8IguumORyRsmT+E7JfJ3A9FEoyhqZR7Au7TBOege3VZkgMvHJMkufeYp4zjnDK2iq4ktkvGMNOQR9T8lisQ==",
"version": "0.2.2",
"resolved": "https://registry.npmjs.org/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.2.2.tgz",
"integrity": "sha512-5RjUbWRe305pUpc48MosoIp6uxZvZxrM6GyOgsbGLTce+ehePKNm7ziW2dLG2air9aXbGuXlHVSQQw4Lbosq3w==",
"dev": true,
"engines": {
"node": ">=12.17.0"
},
"peerDependencies": {
"prettier": ">=2.2.0"
"@prettier/plugin-php": "*",
"@prettier/plugin-pug": "*",
"@shopify/prettier-plugin-liquid": "*",
"@shufo/prettier-plugin-blade": "*",
"@trivago/prettier-plugin-sort-imports": "*",
"prettier": ">=2.2.0",
"prettier-plugin-astro": "*",
"prettier-plugin-css-order": "*",
"prettier-plugin-import-sort": "*",
"prettier-plugin-jsdoc": "*",
"prettier-plugin-organize-attributes": "*",
"prettier-plugin-organize-imports": "*",
"prettier-plugin-style-order": "*",
"prettier-plugin-svelte": "*",
"prettier-plugin-twig-melody": "*"
},
"peerDependenciesMeta": {
"@prettier/plugin-php": {
"optional": true
},
"@prettier/plugin-pug": {
"optional": true
},
"@shopify/prettier-plugin-liquid": {
"optional": true
},
"@shufo/prettier-plugin-blade": {
"optional": true
},
"@trivago/prettier-plugin-sort-imports": {
"optional": true
},
"prettier-plugin-astro": {
"optional": true
},
"prettier-plugin-css-order": {
"optional": true
},
"prettier-plugin-import-sort": {
"optional": true
},
"prettier-plugin-jsdoc": {
"optional": true
},
"prettier-plugin-organize-attributes": {
"optional": true
},
"prettier-plugin-organize-imports": {
"optional": true
},
"prettier-plugin-style-order": {
"optional": true
},
"prettier-plugin-svelte": {
"optional": true
},
"prettier-plugin-twig-melody": {
"optional": true
}
}
},
"node_modules/queue-microtask": {
@ -1526,9 +1584,9 @@
}
},
"node_modules/rimraf": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.1.1.tgz",
"integrity": "sha512-Z4Y81w8atcvaJuJuBB88VpADRH66okZAuEm+Jtaufa+s7rZmIz+Hik2G53kGaNytE7lsfXyWktTmfVz0H9xuDg==",
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.1.2.tgz",
"integrity": "sha512-BlIbgFryTbw3Dz6hyoWFhKk+unCcHMSkZGrTFVAx2WmttdBSonsdtRlwiuTbDqTKr+UlXIUqJVS4QT5tUzGENQ==",
"dev": true,
"bin": {
"rimraf": "dist/cjs/src/bin.js"
@ -1828,17 +1886,17 @@
"dev": true
},
"@headlessui/react": {
"version": "1.7.7",
"resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.7.tgz",
"integrity": "sha512-BqDOd/tB9u2tA0T3Z0fn18ktw+KbVwMnkxxsGPIH2hzssrQhKB5n/6StZOyvLYP/FsYtvuXfi9I0YowKPv2c1w==",
"version": "1.7.8",
"resolved": "https://registry.npmjs.org/@headlessui/react/-/react-1.7.8.tgz",
"integrity": "sha512-zcwb0kd7L05hxmoAMIioEaOn235Dg0fUO+iGbLPgLVSjzl/l39V6DTpC2Df49PE5aG5/f5q0PZ9ZHZ78ENNV+A==",
"requires": {
"client-only": "^0.0.1"
}
},
"@heroicons/react": {
"version": "2.0.13",
"resolved": "https://registry.npmjs.org/@heroicons/react/-/react-2.0.13.tgz",
"integrity": "sha512-iSN5XwmagrnirWlYEWNPdCDj9aRYVD/lnK3JlsC9/+fqGF80k8C7rl+1HCvBX0dBoagKqOFBs6fMhJJ1hOg1EQ==",
"version": "2.0.14",
"resolved": "https://registry.npmjs.org/@heroicons/react/-/react-2.0.14.tgz",
"integrity": "sha512-eFL4if6L7woL1fUvk/jjXx4z9NxVESHHrQnEd2qKVelTFTIr/3VLGWdPb0biia9ZVe26P0JSs/xmOlRNur3SrQ==",
"requires": {}
},
"@kurkle/color": {
@ -1949,9 +2007,9 @@
"integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA=="
},
"chart.js": {
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.1.2.tgz",
"integrity": "sha512-9L1w6WLPq6ztiWVVOYtDtpo0CUsBKDWPrUEdwChAyzczaikqeSwNKEv3QpJ7EO4ICcLSi6UDVhgvcnUhRJidRA==",
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/chart.js/-/chart.js-4.2.0.tgz",
"integrity": "sha512-wbtcV+QKeH0F7gQZaCJEIpsNriFheacouJQTVIjITi3eQA8bTlIBoknz0+dgV79aeKLNMAX+nDslIVE/nJ3rzA==",
"dev": true,
"requires": {
"@kurkle/color": "^0.3.0"
@ -2840,9 +2898,9 @@
}
},
"prettier-plugin-tailwindcss": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.2.1.tgz",
"integrity": "sha512-aIO8IguumORyRsmT+E7JfJ3A9FEoyhqZR7Au7TBOege3VZkgMvHJMkufeYp4zjnDK2iq4ktkvGMNOQR9T8lisQ==",
"version": "0.2.2",
"resolved": "https://registry.npmjs.org/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.2.2.tgz",
"integrity": "sha512-5RjUbWRe305pUpc48MosoIp6uxZvZxrM6GyOgsbGLTce+ehePKNm7ziW2dLG2air9aXbGuXlHVSQQw4Lbosq3w==",
"dev": true,
"requires": {}
},
@ -2907,9 +2965,9 @@
"integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw=="
},
"rimraf": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.1.1.tgz",
"integrity": "sha512-Z4Y81w8atcvaJuJuBB88VpADRH66okZAuEm+Jtaufa+s7rZmIz+Hik2G53kGaNytE7lsfXyWktTmfVz0H9xuDg==",
"version": "4.1.2",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.1.2.tgz",
"integrity": "sha512-BlIbgFryTbw3Dz6hyoWFhKk+unCcHMSkZGrTFVAx2WmttdBSonsdtRlwiuTbDqTKr+UlXIUqJVS4QT5tUzGENQ==",
"dev": true
},
"robust-predicates": {

View file

@ -1,6 +1,6 @@
{
"name": "hugo-blowfish-theme",
"version": "2.26.0",
"version": "2.27.0",
"description": "Blowfish theme for Hugo",
"scripts": {
"fullinstall": "npm run preinstall && npm install && npm run postinstall",
@ -35,7 +35,7 @@
"homepage": "https://github.com/nunocoracao/blowfish#readme",
"devDependencies": {
"@tailwindcss/typography": "^0.5.9",
"chart.js": "^4.1.2",
"chart.js": "^4.2.0",
"fuse.js": "^6.6.2",
"jquery": "^3.6.3",
"katex": "^0.16.4",
@ -43,8 +43,8 @@
"packery": "^2.1.2",
"prettier": "^2.8.3",
"prettier-plugin-go-template": "^0.0.13",
"prettier-plugin-tailwindcss": "^0.2.1",
"rimraf": "^4.1.1",
"prettier-plugin-tailwindcss": "^0.2.2",
"rimraf": "^4.1.2",
"tailwindcss": "^3.2.4",
"tw-elements": "^1.0.0-alpha13",
"typeit": "^8.7.1",
@ -98,8 +98,8 @@
}
],
"dependencies": {
"@headlessui/react": "^1.7.7",
"@heroicons/react": "^2.0.13",
"@headlessui/react": "^1.7.8",
"@heroicons/react": "^2.0.14",
"@tailwindcss/forms": "^0.5.3",
"commander": "^10.0.0"
}