summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2026-04-16feat: i18n singular/plural post count on taxonomy listfix/taxonomy-layoutsDanilo M.3-2/+8
Replace hardcoded "Posts: N" with i18n "postCount" key using Hugo's pluralization support (one/other forms). Renders "1 post" or "N posts" in English, "1 articolo" or "N articoli" in Italian. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-16feat: add article count badge to taxonomy list itemsDanilo M.1-2/+12
Each term card on the tags/categories list page now shows a count badge (top-right) with the number of articles in that term. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-16fix: restore articles to taxonomy pages and fix i18n headingsDanilo M.4-2/+22
Fixed two critical bugs in taxonomy layouts: 1. Pinned/unpinned filter was silently hiding all articles. The filter only matched pages that explicitly set pinned=false, dropping all articles that omitted the parameter (most articles have nil, not false). Added the nil/empty fallback from _default/list.html. 2. Missing i18n keys caused blank headings on some taxonomy pages: - Added 'tag' key for /tags/term/ pages - Added 'categories' key for /categories/ list page 3. Harmonized spacing with main article list for visual consistency: Changed from space-y-2 max-w-2xl to space-y-6 max-w-3xl Changes: - i18n/en.yaml: Added 'tag' and 'categories' keys - i18n/it.yaml: Added 'tag' and 'categories' keys - taxonomy/list.html: Added nil fallback + spacing fix - taxonomy/term.html: Added nil fallback + spacing fix Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-16refactor: remove footer-specific backdrop-filter rule for consistencyDanilo M.2-13/+0
2026-04-16fix: restore relative z-20 classes to footer for backdrop-filter to workfeature/footer-frosted-glassDanilo M.1-1/+1
2026-04-16refactor: remove positioning classes from footer for consistency with headerDanilo M.1-1/+1
2026-04-16refactor: use frosted-bar class on footer with stronger blur variantDanilo M.3-9/+5
2026-04-16adjust: reduce footer background opacity to 0.6 for better frosted glass ↵Danilo M.1-1/+1
visibility
2026-04-16fix: add position and z-index to footer for backdrop-filter to workDanilo M.3-1/+9
2026-04-16fix: add backdrop-filter blur to footer via CSS with vendor prefixDanilo M.3-7/+9
2026-04-16fix: use CSS variables in footer inline styles for theme-aware colorsDanilo M.1-1/+1
2026-04-16fix: apply frosted glass styling to footer via inline styles instead of CSS ↵Danilo M.1-1/+1
class
2026-04-16test: set footer background to red to check if inline styles work at allDanilo M.1-1/+1
2026-04-16test: add inline style to footer background for debuggingDanilo M.1-1/+1
2026-04-16test: set footer background to fully opaque (1) to debug stylingDanilo M.3-10/+7
2026-04-16fix: add frosted-bar-strong class to footer for stronger frosting and opacityDanilo M.3-6/+8
2026-04-16fix: increase footer backdrop blur from 10px to 20px for stronger frosting ↵Danilo M.2-4/+5
effect
2026-04-16fix: increase footer opacity to 0.88 for better visual balance with headerDanilo M.2-0/+11
2026-04-16fix: reduce frosted-bar background opacity from 0.92 to 0.75 for better ↵Danilo M.2-2/+2
readability
2026-04-16docs: update handoff notes with frosted glass implementation detailsDanilo M.1-10/+29
2026-04-16refactor: update internal footer divider to match frosted-bar border stylingDanilo M.1-1/+1
2026-04-16refactor: apply frosted-bar component to footerDanilo M.1-1/+1
2026-04-16refactor: remove border from frosted-bar component, let templates control ↵Danilo M.2-1/+27
border direction
2026-04-16refactor: apply frosted-bar component to headerDanilo M.1-1/+1
2026-04-16refactor: extract bg2 RGBA values to CSS variables for frosted-bar componentDanilo M.1-5/+4
2026-04-16feat: add frosted-bar CSS component for header and footerDanilo M.1-0/+12
2026-04-16docs: add frosted glass implementation planDanilo M.1-0/+233
2026-04-16Add padding and glow effects to content sectionsfeature/matrix-rain-backgroundDanilo M.2-0/+34
- Add 2rem padding, border, and soft glow to single page content grid - Add matching glow effect to article list items with full-opacity border - Uses theme-aware CSS variables for consistent styling across dark/light modes Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-16Complete matrix rain background effect implementationDanilo M.8-5/+263
- Add canvas-based matrix rain animation with ASCII + katakana characters - Implement per-column animation with varied drop speeds (2-4 frame throttle) - Theme-aware colors: purple and green accents with live switching - Homepage: 28% opacity (dark) / 35% opacity (light) for prominent hero effect - Inner pages: 13% opacity (dark) / 18% opacity (light) for subtle side gutters - Respect prefers-reduced-motion system setting - Add opaque background to content grids to block rain under text - Add .content-grid class to differentiate single pages from list pages - Add solid background to article list item cards - Update article list item with bg-bg class for readability - Z-index stack: canvas (z-1), content grid (z-9), main content (z-10) Files modified: - matrix-rain.js: new IIFE animation script with MutationObserver for theme switching - baseof.html: add canvas element and script tag with guard - main.css: add canvas positioning, opacity rules, content grid background - _default/single.html: add max-w-7xl and .content-grid class - articles/single.html: add max-w-7xl and .content-grid class - is/list.html: add max-w-7xl and .content-grid class - article-list-item.html: add bg-bg class for solid background Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Implement article type colors, reading progress bar, and optimize layoutDanilo M.18-36/+290
- Add colored type pills to article list items (overlay on thumbnails, top-right) - Add type accent corner (L-shaped) to single article headers with colored pill badge in metadata - Implement smooth reading progress bar at viewport top (violet→green gradient) - Progress bar only appears on single pages/articles, not on lists or homepage - Constrain article width to max-w-7xl for comfortable reading with side gutters - Use CSS variables for all colors to support dark/light theme switching - Add reading-progress.js with requestAnimationFrame throttling for performance - Update HANDOFF.md with current progress Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Document video, quote, and actions shortcodes in SHORTCODES.mdDanilo M.1-2/+130
- Add comprehensive Video shortcode documentation with parameters and examples - Document page bundle video resolution for automatic URL generation - Add browser compatibility notes for WebM, MP4, and Ogg formats - Document Quote shortcode with source attribution and optional links - Document Actions shortcode for download buttons and CTAs - Update Future Shortcodes section to reflect implemented features Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Resolve page bundle video paths using Resources APIDanilo M.1-0/+43
- Use .Page.Resources.GetMatch to resolve video files in page bundles - For videos in the same directory as index.md, use src="filename.webm" - Template automatically resolves to correct permalink (/articles/slug/filename.webm) - Falls back to literal path if resource not found (for external URLs) Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Allow custom sizing in image shortcodeDanilo M.2-3/+67
- Move w-full h-auto into default class parameter instead of hardcoding - Users can now override sizing with custom class parameter - Default still applies w-full h-auto if no class specified - Update SHORTCODES.md documentation with sizing examples - Add CSS class reference tables for common sizing patterns Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Fix article shortcode issues and add actions shortcodeDanilo M.2-0/+253
- Fix gify-back-to-bash-scripting article: replace figure shortcode with image - Add actions shortcode for download/action buttons with icon and styling - Actions shortcode accepts: url (required), desc, outclass, inclass parameters - Rendered as styled link with feather download icon Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Resolve page bundle image paths correctlyDanilo M.1-2/+12
- Use Hugo Resources API to resolve image paths for page bundles - For images in the same directory as index.md, use image = "filename.jpg" - Template automatically resolves to correct permalink (/articles/slug/filename.jpg) - Falls back to literal image path if resource not found (for external URLs) Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Fix article list template to display articles without pinned parameterDanilo M.2-0/+12
- Handle undefined .Params.pinned gracefully by checking for nil/"" values - This allows articles without explicit pinned param to appear in regular posts section - Added check: if where clause returns no unpinned posts, search for nil/empty params - Articles test index now has proper TOML frontmatter with title Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Add thumbnail support to article listingsDanilo M.2-28/+59
- Add 'image' front matter parameter for article thumbnails - Redesign article-list-item.html as semantic article card: - Large thumbnail (aspect-video, object-cover) at top if image is present - Title linked to article page - Publication date and type badge - Excerpt (from .Description or .Summary with plainify) - "Read more" CTA button with arrow icon and hover animation - Increase list container width (max-w-2xl → max-w-3xl) and spacing (space-y-2 → space-y-6) - Thumbnail image has subtle scale-up hover effect - Arrow icon animates on hover - All three clickable elements (.image, title, CTA) link to article Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Implement taxonomy system for tags and categoriesDanilo M.4-0/+89
- Enable tags and categories taxonomies in hugo.toml - Create taxonomy/list.html for archive pages (/tags, /categories) - Create taxonomy/term.html for individual term pages (/tags/example) - Add quote shortcode for quote-type articles - Both templates reuse article-list-item partial for consistent styling Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Fix theme toggle icon to always sync with actual page themeDanilo M.2-25/+25
Replace Alpine.js conditional rendering with plain JavaScript that: - Reads the actual theme class from the html element on page load - Updates icon visibility based on the real DOM state, not internal state - Handles navigation correctly since it checks the current class every time This fixes the issue where navigating between pages caused the icon to become out of sync with the actual theme being displayed. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Fix theme toggle icon state sync on page navigationDanilo M.1-2/+9
The Alpine.js state was reading from localStorage instead of the actual class on the html element, causing the icon to be out of sync with the actual theme. Now we initialize the Alpine state by checking the current html classList, which is set by the page-load script in baseof.html. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Fix design system compliance: CSS variables, accessibility, and theme systemDanilo M.16-66/+329
Core CSS improvements: - Add --surface-rgb, --type-* (tech, life, quote, link, photo) custom properties - Add --type-* semantic color classes for article badges - Convert article badges from inline styles to CSS variable system - Add prefers-color-scheme light fallback for no-JS users - Add prefers-reduced-motion support to respect user accessibility settings - Replace *:focus with *:focus-visible (keyboard-only outlines) - Add clamp() fluid typography for hero-title and section-title - Refactor container rules to mobile-first with 1060px breakpoint Theme & Icon fixes: - Fix theme toggle icon display with Alpine.js (was broken with Tailwind dark: classes) - Add aria-hidden="true" to icon elements - Update header with proper ARIA attributes on menu toggle Accessibility enhancements: - Add skip-to-main-content link in baseof.html - Update hamburger menu with aria-expanded, aria-controls, aria-hidden - Implement focus trap (Tab loops) within mobile menu - Return focus to trigger button on menu close - Add menu open/close state management with proper ARIA Semantic HTML: - Wrap article pages in <article> element (articles/single.html, _default/single.html) - Fix quote article to use --type-quote border color instead of generic accent Image optimization: - Add loading="lazy" to profile image in index.html - Add loading="lazy" to featured image in photo.html Template fixes: - Remove broken os.Getenv "THEME" runtime check from article-list-item.html - Replace inline color styles with semantic .type-* classes - Add 1060px lg: breakpoint to tailwind.config.js i18n updates: - Add skipToContent translations (en, it) Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Complete multilingual theme implementation with language-aware menusDanilo M.23-133/+275
- Refactor hugo.toml to define menus separately for each language using pageRef - Simplify header and hamburger-menu templates to use Hugo-native language handling - Update content structure with proper language prefix organization - Remove JavaScript language-switcher in favor of Hugo's native approach - Add new layout templates for /is/ section with list view - Update HANDOFF.md with current implementation status - Rebuild minified CSS with updated template changes Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Fix gravatar shortcode and about page ref linksDanilo M.3-5/+5
- Fix gravatar.html: replace trim() with strings.TrimSpace() - Fix about pages: replace {{< ref "legal" >}} with relative path ../legal - Both English and Italian about pages now build without errors Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Update SHORTCODES.md to reflect contact form shortcode name changeDanilo M.1-3/+3
- Change {{< contact_form >}} → {{< contact >}} in all documentation - Update contributing section with correct theme directory path - Contact shortcode example now matches implementation Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Fix contact form shortcode: rename from contact-form.html to contact.htmlDanilo M.3-5/+7
Problem: Hugo v0.160 doesn't find shortcode as 'contact_form' when filename is contact-form.html Solution: Rename to contact.html so shortcode is {{< contact >}} - Rename shortcodes/contact-form.html → contact.html - Update contact pages to use {{< contact >}} shortcode - Remove unused dict initialization line from contact shortcode - Contact form now works on both English and Italian contact pages Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Extract contact form JavaScript to separate file and remove shortcode from ↵Danilo M.6-77/+51
contact pages - Move contact form Alpine.js logic to assets/js/contact-form.js - Simplify contact-form.html shortcode by removing inline script - Load contact-form.js in baseof.html after Alpine.js - Temporarily remove {{< contact_form >}} shortcode from contact pages (shortcode parsing issue to investigate later) - Contact pages now display with placeholder text Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Remove unnecessary type field from static pagesDanilo M.6-4/+116
The 'type' field is unused for static pages. Hugo automatically sets the type based on directory structure. The 'type' custom parameter is only used for articles (Life, Photo, Link, Quote, Tech). Static pages no longer need: type = "page" Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Fix language switcher to preserve current page pathDanilo M.2-4/+26
- Update language switcher to translate current page path instead of redirecting to root - When switching languages, preserve the page you're on (e.g., /articles/ → /it/articles/) - Works for both desktop header and mobile hamburger menu - Uses Hugo's string functions to manipulate URL paths Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Add language toggle to desktop headerDanilo M.1-1/+18
- Add language switcher (IT/EN) visible on desktop only - Language buttons show in header next to theme toggle - Current language highlighted with accent background - Mobile still uses hamburger menu for language toggle - Responsive design: hidden on mobile (md:hidden), visible on desktop Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-15Remove Alpine.js dependency from menu toggle, use vanilla JavaScriptDanilo M.4-22/+123
- Replace Alpine.js directives (@click, x-ref) with vanilla JS - Update hamburger-menu.html to use id selectors instead of x-ref - Rewrite menu.js to work without Alpine.js - Menu now opens/closes on click with proper event handling - Language toggle now accessible in hamburger menu Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>