Skip to content

v0.4.0

Choose a tag to compare

@furkanural furkanural released this 06 Mar 08:37
· 30 commits to main since this release
2d64351

Breaking Changes

  • Post content type renamed to Article: Sayfa.ContentTypes.Post is now Sayfa.ContentTypes.Article. Content files in posts/ directories should move to articles/, URLs change from /posts/{slug}/ to /articles/{slug}/, and the layout: "post" front matter key should be updated to layout: "article". The recent_posts and related_posts blocks are renamed to recent_articles and related_articles respectively.

Added

  • Asset digesting: The builder now computes content hashes for compiled CSS and JS files and rewrites references in the base layout to cache-busted URLs (e.g. app-a1b2c3d4.css), enabling long-lived caching in production.
  • Language switcher variant: assign: Render multiple language switcher instances on the same page with unique element IDs by passing variant: :desktop or variant: :mobile.
  • Language switcher home fallback: The language switcher no longer hides when a page has no verified translation — it falls back to the target language's home path so the switcher is always visible.
  • AGENTS.md: Guidance file for AI coding agents working on the Sayfa codebase.

Changed

  • Default theme rewritten with Catppuccin Latte/Mocha palette: The entire default theme CSS has been rewritten using the Catppuccin color system. Latte (light) and Mocha (dark) palettes auto-switch via prefers-color-scheme. All palette tokens are registered as --color-ctp-* Tailwind utilities via @theme inline. Feed tooltip contrast meets WCAG AA in both modes.
  • Semantic CSS component classes: All block modules now emit semantic component class names (e.g. .header-shell, .content-card, .toc-nav) instead of raw Tailwind utilities. Styles are centralized in main.css.
  • Breadcrumb block redesigned as a back-link: The full <nav> breadcrumb trail is replaced with a minimal ← Section back link. Bare pages emit only JSON-LD BreadcrumbList structured data without a visible link.
  • Arabic font loading stabilized: @font-face declarations for Arabic fonts now load reliably across builds.

Full Changelog: v0.3.3...v0.4.0