Compare commits

...

9 Commits

Author SHA1 Message Date
Wolf Noble c650ef6bf1
Merge 984bb01c79 into 16edb5da3b 2023-11-26 15:53:11 +01:00
James Panther 16edb5da3b
📝 Update changelog 2023-11-26 16:25:55 +11:00
James Panther 041fc30fe9
🔀 Merge pull request #691 from stereobooster/portable-links-2
Print warning if system can't resolve link to a markdown file
2023-11-26 16:23:01 +11:00
James Panther a9f79b7495
🔥 Remove Fathom Analytics custom domain parameter 2023-11-26 16:20:04 +11:00
James Panther 05c3fef94a
🔨 Preparing release v2.7.6 2023-11-26 15:41:00 +11:00
James Panther 6e4ace75f8
🐛 Fix mermaid diagram dark mode styling
Fixes #706
2023-11-26 11:43:02 +11:00
James Panther 1373cfd3e4
🧑‍💻 Add code of conduct 2023-11-25 20:26:26 +11:00
stereobooster e70c968e56 Print warning if system can't resolve link to a markdown file 2023-10-31 16:54:45 +01:00
Wolf Noble 984bb01c79 🚸 🩹 add logic braces to sidestep image sizing when using a vector image for the author 2023-10-26 20:31:15 -05:00
16 changed files with 100 additions and 27 deletions

View File

@ -6,6 +6,20 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
## [Unreleased] ## [Unreleased]
### Added
- Warning when building if links to markdown files cannot be resolved ([#691](https://github.com/jpanther/congo/pull/691))
### Removed
- Fathom Analytics custom domain parameter as this is no longer supported by Fathom
## [2.7.6] - 2023-11-26
### Fixed
- Some Mermaid diagram elements not styled correctly in dark mode ([#706](https://github.com/jpanther/congo/issues/706))
## [2.7.5] - 2023-11-25 ## [2.7.5] - 2023-11-25
### Added ### Added
@ -797,7 +811,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
- Advanced customisation using simple Tailwind colour definitions and styles - Advanced customisation using simple Tailwind colour definitions and styles
- Fully documented - Fully documented
[Unreleased]: https://github.com/jpanther/congo/compare/v2.7.5...HEAD [Unreleased]: https://github.com/jpanther/congo/compare/v2.7.6...HEAD
[2.7.6]: https://github.com/jpanther/congo/compare/v2.7.5...v2.7.6
[2.7.5]: https://github.com/jpanther/congo/compare/v2.7.4...v2.7.5 [2.7.5]: https://github.com/jpanther/congo/compare/v2.7.4...v2.7.5
[2.7.4]: https://github.com/jpanther/congo/compare/v2.7.3...v2.7.4 [2.7.4]: https://github.com/jpanther/congo/compare/v2.7.3...v2.7.4
[2.7.3]: https://github.com/jpanther/congo/compare/v2.7.2...v2.7.3 [2.7.3]: https://github.com/jpanther/congo/compare/v2.7.2...v2.7.3

43
CODE_OF_CONDUCT.md 100644
View File

@ -0,0 +1,43 @@
# Code of Conduct - Congo
## Our Pledge
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to make participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, religion, or sexual identity and orientation.
## Our Standards
Examples of behaviour that contributes to a positive environment for our community include:
- Demonstrating empathy and kindness toward other people
- Being respectful of differing opinions, viewpoints, and experiences
- Giving and gracefully accepting constructive feedback
- Accepting responsibility and apologising to those affected by our mistakes, and learning from the experience
- Focusing on what is best not just for us as individuals, but for the overall community
Examples of unacceptable behaviour include:
- The use of sexualised language or imagery, and sexual attention or advances
- Trolling, insulting or derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others' private information, such as a physical or email address, without their explicit permission
- Other conduct which could reasonably be considered inappropriate in a professional setting
## Our Responsibilities
Project maintainers are responsible for clarifying and enforcing our standards of acceptable behaviour and will take appropriate and fair corrective action in response to any instances of unacceptable behaviour.
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviours that they deem inappropriate, threatening, offensive, or harmful.
## Scope
This Code of Conduct applies within all community spaces, and also applies when an individual is officially representing the community in public spaces. Examples of representing our community include using an official e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behaviour may be reported to the [project maintainer](https://github.com/jpanther/). All complaints will be reviewed and investigated promptly and fairly.
All community leaders are obligated to respect the privacy and security of the reporter of any incident.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant](https://contributor-covenant.org/), version [1.4](https://www.contributor-covenant.org/version/1/4/code-of-conduct/code_of_conduct.md) and [2.0](https://www.contributor-covenant.org/version/2/0/code_of_conduct/code_of_conduct.md), and was generated by [contributing-gen](https://github.com/bttger/contributing-gen).

View File

@ -1,4 +1,4 @@
/*! Congo v2.7.5 | MIT License | https://github.com/jpanther/congo */ /*! Congo v2.7.6 | MIT License | https://github.com/jpanther/congo */
/*! tailwindcss v3.3.5 | MIT License | https://tailwindcss.com */ /*! tailwindcss v3.3.5 | MIT License | https://tailwindcss.com */

View File

@ -1,4 +1,4 @@
/*! Congo v2.7.5 | MIT License | https://github.com/jpanther/congo */ /*! Congo v2.7.6 | MIT License | https://github.com/jpanther/congo */
@tailwind base; @tailwind base;
@tailwind components; @tailwind components;

View File

@ -2,19 +2,29 @@ function css(name) {
return "rgb(" + getComputedStyle(document.documentElement).getPropertyValue(name) + ")"; return "rgb(" + getComputedStyle(document.documentElement).getPropertyValue(name) + ")";
} }
let isDark = document.documentElement.classList.contains("dark");
mermaid.initialize({ mermaid.initialize({
theme: "base", theme: "base",
themeVariables: { themeVariables: {
background: css("--color-neutral"), background: css("--color-neutral"),
primaryColor: css("--color-primary-200"), primaryTextColor: isDark ? css("--color-neutral-200") : css("--color-neutral-700"),
secondaryColor: css("--color-secondary-200"), primaryColor: isDark ? css("--color-primary-700") : css("--color-primary-200"),
tertiaryColor: css("--color-neutral-100"), secondaryColor: isDark ? css("--color-secondary-700") : css("--color-secondary-200"),
primaryBorderColor: css("--color-primary-400"), tertiaryColor: isDark ? css("--color-neutral-700") : css("--color-neutral-100"),
primaryBorderColor: isDark ? css("--color-primary-500") : css("--color-primary-400"),
secondaryBorderColor: css("--color-secondary-400"), secondaryBorderColor: css("--color-secondary-400"),
tertiaryBorderColor: css("--color-neutral-400"), tertiaryBorderColor: isDark ? css("--color-neutral-300") : css("--color-neutral-400"),
lineColor: css("--color-neutral-600"), lineColor: isDark ? css("--color-neutral-300") : css("--color-neutral-600"),
fontFamily: fontFamily:
"ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif", "ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif",
fontSize: "16px", fontSize: "16px",
pieTitleTextSize: "19px",
pieSectionTextSize: "16px",
pieLegendTextSize: "16px",
pieStrokeWidth: "1px",
pieOuterStrokeWidth: "0.5px",
pieStrokeColor: isDark ? css("--color-neutral-300") : css("--color-neutral-400"),
pieOpacity: "1",
}, },
}); });

View File

@ -68,7 +68,6 @@ fingerprintAlgorithm = "sha256"
[fathomAnalytics] [fathomAnalytics]
# site = "ABC12345" # site = "ABC12345"
# domain = "llama.yoursite.com"
[plausibleAnalytics] [plausibleAnalytics]
# domain = "blog.yoursite.com" # domain = "blog.yoursite.com"

View File

@ -68,7 +68,6 @@ fingerprintAlgorithm = "sha256"
[fathomAnalytics] [fathomAnalytics]
# site = "ABC12345" # site = "ABC12345"
# domain = "llama.yoursite.com"
[verification] [verification]
# google = "" # google = ""

View File

@ -169,7 +169,6 @@ Congoはテーマの機能を制御する多数の設定パラメーターを提
|`sitemap.excludedKinds`|`["taxonomy", "term"]`|生成される `/sitemap.xml` から除外されるべきコンテンツの種類。許容される値については[Hugo docs](https://gohugo.io/templates/section-templates/#page-kinds)を参照してください。| |`sitemap.excludedKinds`|`["taxonomy", "term"]`|生成される `/sitemap.xml` から除外されるべきコンテンツの種類。許容される値については[Hugo docs](https://gohugo.io/templates/section-templates/#page-kinds)を参照してください。|
|`taxonomy.showTermCount`|`true`|TaxonomiesのリストにTermごとの記事数を表示するかどうか。| |`taxonomy.showTermCount`|`true`|TaxonomiesのリストにTermごとの記事数を表示するかどうか。|
|`fathomAnalytics.site`|_Not set_|Fathom Analyticsによって生成されたウェブサイトのサイトコード。詳細は[アナリティクス]({{< ref "partials#" >}})を参照してください。| |`fathomAnalytics.site`|_Not set_|Fathom Analyticsによって生成されたウェブサイトのサイトコード。詳細は[アナリティクス]({{< ref "partials#" >}})を参照してください。|
|`fathomAnalytics.domain`|_Not set_|Fathom Analyticsでカスタムドメインを使用している場合、カスタムドメインから`script.js`を提供するためにここに指定します。|
|`verification.google`|_Not set_|サイトのメタデータに含めるGoogleが提供するサイト検証文字列。| |`verification.google`|_Not set_|サイトのメタデータに含めるGoogleが提供するサイト検証文字列。|
|`verification.bing`|_Not set_|サイトのメタデータに含めるBingが提供するサイト検証文字列。| |`verification.bing`|_Not set_|サイトのメタデータに含めるBingが提供するサイト検証文字列。|
|`verification.pinterest`|_Not set_|サイトのメタデータに含めるPinterestが提供するサイト検証文字列。| |`verification.pinterest`|_Not set_|サイトのメタデータに含めるPinterestが提供するサイト検証文字列。|

View File

@ -169,7 +169,6 @@ Many of the article defaults here can be overridden on a per article basis by sp
|`sitemap.excludedKinds`|`["taxonomy", "term"]`|Kinds of content that should be excluded from the generated `/sitemap.xml` file. Refer to the [Hugo docs](https://gohugo.io/templates/section-templates/#page-kinds) for acceptable values.| |`sitemap.excludedKinds`|`["taxonomy", "term"]`|Kinds of content that should be excluded from the generated `/sitemap.xml` file. Refer to the [Hugo docs](https://gohugo.io/templates/section-templates/#page-kinds) for acceptable values.|
|`taxonomy.showTermCount`|`true`|Whether or not the number of articles within a taxonomy term is displayed on the taxonomy listing.| |`taxonomy.showTermCount`|`true`|Whether or not the number of articles within a taxonomy term is displayed on the taxonomy listing.|
|`fathomAnalytics.site`|_Not set_|The site code generated by Fathom Analytics for the website. Refer to the [Analytics docs]({{< ref "partials#analytics" >}}) for more details.| |`fathomAnalytics.site`|_Not set_|The site code generated by Fathom Analytics for the website. Refer to the [Analytics docs]({{< ref "partials#analytics" >}}) for more details.|
|`fathomAnalytics.domain`|_Not set_|If using a custom domain with Fathom Analytics, provide it here to serve `script.js` from the custom domain.|
|`plausibleAnalytics.domain`|_Not set_|Enter the domain of the website you want to track. Refer to the [Analytics docs]({{< ref "partials#analytics" >}}) for more details.| |`plausibleAnalytics.domain`|_Not set_|Enter the domain of the website you want to track. Refer to the [Analytics docs]({{< ref "partials#analytics" >}}) for more details.|
|`plausibleAnalytics.event`|_Not set_|Plausible api event proxied URL. Refer to the [Analytics docs]({{< ref "partials#analytics" >}}) for more details.| |`plausibleAnalytics.event`|_Not set_|Plausible api event proxied URL. Refer to the [Analytics docs]({{< ref "partials#analytics" >}}) for more details.|
|`plausibleAnalytics.script`|_Not set_|Plausible analysis script proxied URL. Refer to the [Analytics docs]({{< ref "partials#analytics" >}}) for more details.| |`plausibleAnalytics.script`|_Not set_|Plausible analysis script proxied URL. Refer to the [Analytics docs]({{< ref "partials#analytics" >}}) for more details.|

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

View File

@ -10,18 +10,21 @@ tags: ["partials", "analytics", "privacy", "comments", "favicons", "icon", "docs
## Analytics ## Analytics
Congo provides built-in support for Fathom Analytics and Google Analytics. Fathom is a paid alternative to Google Analytics that respects user privacy. If you're interested you can use this affiliate link to [receive $10 credit](https://usefathom.com/ref/RLAJSV) and try the service. Congo provides support for various analytics providers out of the box, as well as the ability to include custom code for any provider of your choice. If you don't currently have an analytics provider, check out Fathom Analytics.
### Fathom Analytics ### Fathom Analytics
To enable Fathom Analytics support, simply provide your Fathom site code in the `config/_default/params.toml` file. If you also use the custom domain feature of Fathom and would like to serve their script from your domain, you can also additionally provide the `domain` configuration value. If you don't provide a `domain` value, the script will load directly from Fathom DNS. Fathom Analytics is a privacy-first service that is a great alternative to Google Analytics. It allows you to get all the visitor information you need, without spying on them. As a Congo user, you can use this affiliate link to [receive $10 credit](https://usefathom.com/ref/RLAJSV) and try the service.
[![Fathom Analytics. Website analytics without compromise. Zero cookies, GDPR compliant, and privacy-first. Start a free trial.](fathom-analytics.jpg)](https://usefathom.com/ref/RLAJSV)
To enable Fathom Analytics support, simply provide your Fathom site code in the `config/_default/params.toml` file. The script will load in your site directly from the Fathom Analytics CDN.
```toml ```toml
# config/_default/params.toml # config/_default/params.toml
[fathomAnalytics] [fathomAnalytics]
site = "ABC12345" site = "ABC12345"
domain = "llama.yoursite.com"
``` ```
### Plausible Analytics ### Plausible Analytics

View File

@ -2,10 +2,16 @@
{{- $isRemote := strings.HasPrefix $link "http" -}} {{- $isRemote := strings.HasPrefix $link "http" -}}
{{- if not $isRemote }} {{- if not $isRemote }}
{{ $url := urls.Parse .Destination }} {{ $url := urls.Parse .Destination }}
{{ if $url.Path }} {{- if $url.Path }}
{{ $fragment := "" }} {{ $fragment := "" }}
{{- with $url.Fragment }}{{ $fragment = printf "#%s" . }}{{ end -}} {{- with $url.Fragment }}{{ $fragment = printf "#%s" . }}{{ end -}}
{{- with .Page.GetPage $url.Path }}{{ $link = printf "%s%s" .RelPermalink $fragment }}{{ end -}} {{- with .Page.GetPage $url.Path }}
{{ end }} {{ $link = printf "%s%s" .RelPermalink $fragment }}
{{ else }}
{{- if hasSuffix $url.Path ".md" }}
{{ warnf "[CONGO] Can't resolve: %s" .Destination }}
{{ end -}}
{{ end -}}
{{ end -}}
{{ end -}} {{ end -}}
<a href="{{ $link | safeURL }}"{{ with .Title }} title="{{ . }}"{{ end }}{{ if $isRemote }} target="_blank" rel="noreferrer"{{ end }}>{{- .Text | safeHTML -}}</a> <a href="{{ $link | safeURL }}"{{ with .Title }} title="{{ . }}"{{ end }}{{ if $isRemote }} target="_blank" rel="noreferrer"{{ end }}>{{- .Text | safeHTML -}}</a>

View File

@ -1,10 +1,6 @@
{{ if hugo.IsProduction }} {{ if hugo.IsProduction }}
{{ with .Site.Params.fathomAnalytics.site }} {{ with .Site.Params.fathomAnalytics.site }}
{{ if isset $.Site.Params.fathomanalytics "domain" }} <script defer src="https://cdn.usefathom.com/script.js" data-site="{{ . }}"></script>
<script defer src="https://{{ $.Site.Params.fathomanalytics.domain }}/script.js" data-site="{{ . }}"></script>
{{ else }}
<script defer src="https://cdn.usefathom.com/script.js" data-site="{{ . }}"></script>
{{ end }}
{{ end }} {{ end }}
{{ with site.Params.plausibleAnalytics.domain }} {{ with site.Params.plausibleAnalytics.domain }}
<script defer <script defer

View File

@ -3,7 +3,9 @@
{{ with .Site.Author.image }} {{ with .Site.Author.image }}
{{ $authorImage := resources.Get . }} {{ $authorImage := resources.Get . }}
{{ if $authorImage }} {{ if $authorImage }}
{{ $authorImage := $authorImage.Fill "192x192 Center" }} {{- if ne $authorImage.MediaType.SubType "svg" }}
{{ $authorImage := $authorImage.Fill "192x192 Center" }}
{{- end }}
<img <img
class="!mb-0 !mt-0 me-4 h-24 w-24 rounded-full" class="!mb-0 !mt-0 me-4 h-24 w-24 rounded-full"
width="96" width="96"

View File

@ -7,7 +7,9 @@
{{ with .Site.Author.image }} {{ with .Site.Author.image }}
{{ $authorImage := resources.Get . }} {{ $authorImage := resources.Get . }}
{{ if $authorImage }} {{ if $authorImage }}
{{ $authorImage := $authorImage.Fill "288x288 Center" }} {{- if ne $authorImage.MediaType.SubType "svg" }}
{{ $authorImage := $authorImage.Fill "288x288 Center" }}
{{- end }}
<img <img
class="mb-2 h-36 w-36 rounded-full" class="mb-2 h-36 w-36 rounded-full"
width="144" width="144"

View File

@ -1,6 +1,6 @@
{ {
"name": "hugo-congo-theme", "name": "hugo-congo-theme",
"version": "2.7.5", "version": "2.7.6",
"description": "Congo theme for Hugo", "description": "Congo theme for Hugo",
"scripts": { "scripts": {
"preinstall": "rimraf assets/lib", "preinstall": "rimraf assets/lib",