Skip to content

Releases: moddy-app/docs

Moddy Docs — v2.0.0

05 Jun 18:06
91331eb

Choose a tag to compare

New content architecture

  • Complete article/author/label system with bilingual content (FR default + EN)
    • Articles: content/articles/{id}/{fr,en}.md + meta.json
    • Authors: content/authors/{discord-id}.json (auto-fetches Discord avatar at build time)
    • Labels: content/labels/{id}.json with color
  • Eleventy data files: articles.js, authors.js, labels.js, i18n.js
  • Nunjucks templates: article.njk, author.njk, collection.njk
  • Short redirect URLs via pagination templates (redirect-articles.njk, redirect-authors.njk, redirect-labels.njk)
  • Legacy URL redirects for old /legal/, /privacy/, /license/ paths

Content

  • Terms of Service (EN + FR) — CC BY-NC-SA replaced by MCL throughout
  • Privacy Policy (EN + FR)
  • Moddy Community License v1.0 (EN + FR)
  • Authors: Moddy Team (inline SVG avatar with CSS variable colors)

i18n

  • data-lang-content CSS attribute pattern for FR/EN switching (global + article)
  • apply-lang.ts inlined in <head> for flicker-free language init
  • Language picker: globe icon + <md-menu> dropdown (replaces FR/EN buttons)
  • Multilingual article titles via title_translations in meta.json
  • Bilingual TOC rendered at build time (dual render, CSS-switched)
  • Legal notice callout on legal-labelled articles with switch-to-English button

UI / Design

  • Home page: intro text, search bar, label chips + single-select author filter chips
  • Article cards: rounder corners, text-colored border, title-only hover underline, label chips with collection navigation
  • Article page: dynamic nav-drawer top radius following banner scroll, mobile portrait banner, author block with avatar decoration
  • Author page: flat profile card (removed banner gradient + box-shadow), avatar + decoration with straw-clip fix, article grid
  • Collection page: profile-card style header matching author page, removed duplicate badge
  • article-title font-size: 2.9rem -> 3.3rem (mobile: 1.9rem -> 2.1rem)
  • HR separators: thin 1px outline-variant colored line
  • Blockquote: equal padding all sides

Theming

  • Default site color: #ECAA2E -> #373737
  • theme_color in meta.json: absent = auto from first label color, null = no override, value = explicit hex
  • clearPageTheme() called on color/mode change so user can override page theme color

Components

  • nav-drawer.ts: dynamic expanded-top-radius following scroll position, mobile layout polish
  • top-app-bar.ts: globe icon language picker with <md-menu>
  • home-page.ts: search + label + author filter logic, single-select author chips, 6-article limit
  • global.ts: clearPageTheme(), default color #373737
  • moddy-logo.ts: refactored SVG structure

Build / Config

  • eleventy.config.cjs: Prism applied directly in markdownIt({highlight: prismHighlight}) constructor (bypasses amendLibrary timing issue)
  • copy-code-button.cjs: rewritten with safe fallback renderer, defaultFenceRenderer uses options.highlight at render time
  • package.json: added prismjs dependency
  • vercel.json: updated rewrite/redirect rules for new URL structure
  • CLAUDE.md: added project instructions

Bug fixes

  • Label click in article card navigated to article instead of collection
  • page-theme stylesheet was blocking the color picker (never cleared on user change)
  • Collection page showed label name twice (badge + title)
  • Author filter chip missing SVG avatar after avatar: null change
  • Author name not vertically centered when no bio/post
  • TOC not translated (dual render at build time)
  • Article titles not translated (missing title_translations)
  • Prism syntax highlighting not applied (timing issue with amendLibrary)
  • copy-code-button crashing when rules.fence was undefined
  • Avatar decoration clipping (straw clip, box-sizing)
  • Scrollbar overflow at expanded top corner
  • TS18047 grid is possibly null errors in home-page.ts
  • md-menu language picker causing visual shift before hydration

Removed

  • Legacy about/docs pages removed from Eleventy input

57 files changed, 4570 insertions(+), 750 deletions(-)