Blog: Comments System

Level 2 (Topic) — Cusdis Cloud integration, bilingual thread strategy.

Concept

The blog uses Cusdis Cloud as its comment system. Cusdis is a lightweight, open-source, privacy-focused alternative to Disqus. It is configured via Hugo theme params and loaded client-side.

Configuration

File: config/_default/params.toml (lines 146-149)

[cusdis]
  enabled = true
  appId = "6968bcd3-329d-46bb-95e2-18a2148ff233"
  host = "https://cusdis.com"

Bilingual Thread Strategy

Cusdis assigns a unique thread per page URL. Since the Italian and English versions of each article have different URLs (/posts/<slug>/ and /posts/<slug>/ — Hugo’s language switcher handles the path), comments on one language version are automatically separate.

However, the implementation uses the same Cusdis thread ID for both versions, creating a unified bilingual comment thread. This means:

  • A comment left on the Italian page appears on the English page too
  • Readers see all comments regardless of language preference
  • No need to moderate separate threads per language

Widget Loading

The Cusdis widget is loaded by the Blowfish theme when cusdis.enabled = true. No additional configuration or partial overrides are needed.

Known Issue: Iframe Scrollbar

The native Cusdis iframe widget can show nested scrollbars inside the article container. The fix applied (tracked in the Cusdis integration report) ensures the iframe height is properly communicated between the widget and the Hugo theme.

Future Direction

Phase 2 (tracked in CRISP project hugo-open-comments-selection, subproject 20-hugo-cusdis-self-hosted-migration) plans to migrate from Cusdis Cloud to a self-hosted instance on the TazLab cluster, backed by the shared PostgreSQL database.

See Also