summaryrefslogtreecommitdiffstats
path: root/themes/danix-xyz-hacker/layouts/partials
AgeCommit message (Collapse)AuthorFilesLines
2026-04-20feat: add back-to-top partial with Alpine.js and i18nDanilo M.1-0/+23
2026-04-20fix: sync footer styling and i18n translationsDanilo M.1-24/+30
Add horizontal separators between footer blocks on narrow screens. Right-align quote author in fortune block. Synchronize theme i18n files with root translations (en.yaml and it.yaml). Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-20fix: make prev-next navigation responsive on mobileDanilo M.1-3/+3
Stack links vertically on narrow screens, removing max-width constraints to prevent text truncation. Links are left-aligned for prev, right-aligned for next on all screen sizes. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-20fix: add x-data directive to search button for Alpine.js bindingDanilo M.1-0/+1
Search icon button was missing x-data attribute, preventing Alpine.js from processing @click directive. Added minimal x-data to enable event dispatching. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-20feat: integrate search bar into mobile hamburger menuDanilo M.1-0/+37
Adds search input between nav links and language toggle in hamburger overlay. Uses mobileSearch Alpine component with lazy-loaded index. Clicking a result closes the menu. Styled consistently with desktop modal (text-sm, compact spacing). Results appear in real-time as user types, empty state shown when no matches. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-20feat: add open-search event listener to modalDanilo M.1-0/+1
Modal now listens for 'open-search' event dispatched by header search icon button. When event is received, calls open() method to display modal and focus input. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-20feat: add search icon button to desktop headerDanilo M.1-1/+10
Adds magnifying glass icon in header right controls area (desktop only, hidden md:flex). Dispatches 'open-search' event to trigger search modal. Includes proper focus ring styling and accessibility labels. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-20feat: create desktop search modal partialDanilo M.1-0/+86
Implement full-screen overlay modal with: - Search input with auto-focus on open - Results display (max 5 results) with title/date - Three display states: results, no results, no query - WCAG 2.1 AA accessibility: role="dialog", aria-modal, aria-live="polite" - Keyboard support: ESC to close, handled via handleEscape() - Click backdrop to close, click close button - All text localized via i18n keys - Alpine.js 3.x integration with searchOverlay() component Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-20refactor: localize footer copyright bar and about section labels/valuesDanilo M.1-11/+11
Add i18n keys for all footer text: - Copyright bar: "Made with X lack of Y lots of Z by" - Screen-reader text: love, sleep, coffee - About section labels: role, cert, os, focus - About section values: Cybersecurity Specialist, Slackware, OS year range, open-source · privacy English and Italian translations provided. All footer text now responds to language selection with no hardcoded strings. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-20feat: redesign footer with fortune cookie, about terminal readout, and ↵Danilo M.1-22/+65
tech/feature badges New footer structure: 3 equal columns (Fortune Cookie | About Credentials | Stack & Features badges) + full-width copyright bar with emoji personality line. Fortune Cookie: - data/quotes.yaml with 13 curated quotes - fortune.js picks random quote on each page load - HTML fallback shows first quote with no-JS - aria-live="polite" announces quote to screen readers About Column: - Terminal readout style with key-value pairs - role, cert (green), os, focus fields - Semantic <dl> structure for accessibility Badges Column: - "built with" section: Hugo, Tailwind, Alpine.js, HTML5, CSS3, JS (purple badges) - "features" section: WCAG 2.1 AA, Open Source, Privacy Friendly, Claude Code (green badges) - New badge-footer-accent/accent2 CSS classes Copyright Bar: - "Made with ❤️ lack of 😴 lots of ☕ by danix" with emoji wrapped in aria-hidden - danix link points to language-aware About page (/is/ or /it/is/) - Centered, full-width, below border-top i18n additions: - footer_built_with, footer_features keys in English and Italian Theming: - All colors use CSS custom properties (--accent, --accent2, --text, --text-dim) - Monospace fonts throughout (JetBrains Mono) - Responsive: grid-cols-1 mobile → md:grid-cols-3 tablet+ - WCAG 2.1 AA compliant: ≥4.5:1 contrast ratios, keyboard accessible, screen reader tested Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-18feat: add prev/next article navigation with shell prompt styleDanilo M.1-0/+46
Add top and bottom navigation between sequential articles with hacker aesthetic: - Top nav: [visitor@danix.xyz articles]$ cd - Bottom nav: [visitor@danix.xyz articles]$ ls ../ - Missing link shows dimmed placeholder (beginning/end) - Only renders on articles, not static pages - New partial: article-nav.html - Styling: monospace prompt in accent color, hover links with transition Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-18refine: use lampD.png only for homepage, default_thumbnail_dark.png for articlesDanilo M.1-2/+4
- Homepage (IsHome): lampD.png - Articles with image: their custom image - Articles without image: default_thumbnail_dark.png Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-18chore: use lampD.png as default OG thumbnail instead of ↵Danilo M.1-2/+2
default_thumbnail_dark.png Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-18feat: add Open Graph and Twitter Card meta tags for social sharingDanilo M.1-0/+38
Implement comprehensive OG and Twitter Card support: - og:title, og:description, og:image, og:type (website/article) - og:article:published_time and og:article:author for article pages - twitter:card with summary_large_image, twitter:title, twitter:description, twitter:image - Per-page description from excerpt field with fallback to site description - Article-specific tags only rendered for pages with dates - Default dark thumbnail fallback when article has no image - Empty twitterHandle param (optional fill-in for users) Extracted head meta into new partial for maintainability. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-18feat: theme-aware default thumbnails with picture elementDanilo M.1-1/+16
- Use HTML <picture> element with prefers-color-scheme media query - Fallback dark thumbnail via content: url() CSS for theme-light class - Automatically displays light/dark thumbnails based on user theme - Articles without custom images now show default thumbnails - Maintains all existing hover effects and type badges Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-18fix: enable related articles widget on article pagesDanilo M.1-1/+1
The related widget was not displaying because the condition used .Type (the article's frontmatter type field like "life", "tech") instead of .Section (the content section like "articles"). Changed condition from eq .Type "articles" to eq .Section "articles". Also added Hugo's [related] configuration block to enable content matching by categories (weight 100) and tags (weight 80) with an 80% threshold for finding related posts. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-18style: unify sidebar widget styling with bash comment prefixDanilo M.2-6/+9
All sidebar widgets (author, share, related posts) now use: - Unified .sidebar-widget container (no box, only top border via <hr>) - .sidebar-widget-label with # prefix (bash comment style) - Monospace, dimmed, small text for consistency Previously, share widget used a different style (full box with borders). Author and Related Posts widgets now match the hacker aesthetic. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-18fix: use explicit 50px column grid for share icons so sidebar always shows ↵Danilo M.1-1/+1
5+4 layout
2026-04-18style: display social share icons in 5-column grid on sidebar (5+4 rows)Danilo M.1-1/+1
2026-04-18style: redesign social share widget with terminal-native aestheticDanilo M.1-24/+24
Replace generic card + h3 + round buttons with a minimal separator line, mono comment label, and square btn-share buttons that match the site's hacker identity. Icons scaled to 22px inside 50x50px touch targets. Hover/focus states use the site's accent glow pattern.
2026-04-18style: resize social share icons to 50px and tighten grid gapDanilo M.1-12/+12
2026-04-17feat: add social sharing widget to sidebar (articles and pages)Danilo M.1-0/+3
2026-04-17feat: add social-share partial with 9 targets and two layout modesDanilo M.1-0/+123
2026-04-17fix: show Related Articles widget only on articles, not pagesDanilo M.1-2/+2
Add type check: widget now only renders when .Type == 'articles' Pages in the 'is' section won't show the related widget. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-17feat: implement Related Articles sidebar widgetDanilo M.1-7/+28
Replaces stub implementation with full related content functionality: - Uses Hugo's .Site.RegularPages.Related API for smart tagging - Caps at 5 related articles to keep sidebar compact - Shows 2-line compact card per entry (title + date, excerpt snippet) - Left border colored by article type (var(--type-<type>)) - Includes empty state message when no related articles found - Multilingual support via existing i18n keys - Theme-aware styling via CSS custom properties The widget shows: - Line 1: Title (linked) + · Jan 2006 date inline - Line 2: First ~10 words of excerpt, small font, muted Previously was a stub with empty placeholder comment. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-17feat: verify semantic HTML - replace div with button in toast-closeDanilo M.1-1/+1
Replace div element with actual button element for toast notification close control. Adds type='button' and aria-label for accessibility. Maintains all Alpine.js functionality via @click handler. WCAG 2.1 AA compliance: 1.3.1 Info and Relationships
2026-04-17feat: ensure all form inputs have associated labels (for/id attributes)Danilo M.1-10/+10
- Added id to checkbox: agree-terms - Added id/for to checkboxes: interest-tech, interest-design - Added id/for to radio buttons: preference-option-a, preference-option-b - All 13 form inputs now have matching label associations - Improves WCAG 2.1 AA compliance (3.3.2 Labels or Instructions)
2026-04-17feat: ensure i18n-based aria-labels on all icon-only buttonsDanilo M.1-3/+3
Standardize aria-labels across form-components, hamburger-menu, and header partials to use i18n keys for multilingual support. Modal close buttons now consistently use the 'closeMenu' i18n key across all three modals, matching the accessibility pattern used for menu and theme toggle buttons. - form-components.html: Update modal close buttons (alert, confirm, content) - hamburger-menu.html: Already has aria-label with i18n - header.html: Theme toggle and hamburger menu already have aria-labels Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-17feat: enhance modal focus trap with JavaScript and ARIA attributesDanilo M.1-12/+12
Implements focus trap function that cycles Tab/Shift+Tab within modal boundaries, adds ARIA attributes (role, aria-modal, aria-labelledby) for accessibility compliance, and integrates focus initialization on modal display. - Focus trap prevents tab escape from modal dialog - ARIA attributes: role=dialog, aria-modal=true, aria-labelledby linking title - Backdrop marked aria-hidden=true to exclude from accessibility tree - Close buttons have aria-label for screen readers - Focus initialization calls createFocusTrap on modal show Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-16feat: add form component templates, i18n strings, and Alpine.js utilitiesDanilo M.2-0/+232
2026-04-16fix: header sticky positioning regressionDanilo M.1-1/+1
Changed header from sticky to fixed positioning and added proper margin offset (mt-20) to main element to prevent content from being covered. The fixed header now stays at the top during scroll while content renders below it properly. - Fixed header: changed from sticky to fixed with left-0 right-0 full width - Main spacing: added mt-20 margin-top with relative z-10 preserved - Restored z-index layering for content positioning Also added Week 3 completion documentation and Week 4 planning files: - WEEK3-COMPLETION.md: Comprehensive audit of Week 3 implementation - WEEK3-4-TRANSITION.md: Handoff document with git workflow - WEEK4-PLAN.md: Full technical roadmap for Week 4 forms & interactions - PROGRESS-STATUS-WEEK4.txt: Updated cumulative progress tracking - Updated HANDOFF.md with Week 3 summary and Week 4 readiness Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-16fix: logo link now respects current languageDanilo M.1-1/+5
The header logo link was hardcoded to '/' which always returned to the English homepage when clicked from Italian pages. Now uses language-aware routing: IT pages link to /it/, EN pages link to / Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-16feat: make breadcrumb navigation multilingual with proper linksDanilo M.1-2/+9
- Added language-aware breadcrumb links (IT uses /it/ subdir, EN uses root) - Added 'home' translation key to both i18n files - Breadcrumb now displays translated labels and correct URLs for each language Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-16fix: add x-cloak to prevent menu flash on page loadDanilo M.1-0/+1
- Add [x-cloak] { display: none } CSS rule - Add x-cloak attribute to menu overlay div - This hides the menu until Alpine.js initializes - Prevents the menu from appearing briefly on page refresh/load - Rebuild CSS: main.min.css updated Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-16fix: prevent menu flicker when navigating to new pageDanilo M.1-12/+5
- Add beforeunload event listener to close menu before page navigation - This prevents the menu from briefly appearing on the new page - Menu state is explicitly set to false before unload - Rebuild CSS: main.min.css updated Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-16fix: rewrite hamburger menu using Alpine.js event dispatcherDanilo M.2-83/+25
- Replace vanilla JS click handlers with Alpine.js @toggle-menu event - Hamburger button dispatches toggle-menu event on click - Menu overlay listens to toggle-menu and toggles menuOpen state - Alpine controls visibility via :class bindings (opacity/invisible) - Alpine controls panel slide via :class bindings (translate-x) - All menu interactions (close button, links, ESC, backdrop) use Alpine - Remove complex vanilla JS that wasn't working reliably - Rebuild CSS: main.min.css updated Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-16fix: hamburger menu click handler and horizontal scroll issuesDanilo M.1-14/+34
- Improve hamburger menu JS with better error handling and console warnings - Add preventDefault() to button click handlers for reliability - Handle document ready state check (in case script runs before DOMContentLoaded) - Add overflow-x-hidden to html and body to prevent horizontal scrolling on mobile - Rebuild CSS: main.min.css updated Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-16feat: refactor homepage buttons to use btn component classesDanilo M.1-4/+1
- Update index.html to use .btn .btn-primary .btn-lg and .btn .btn-outline .btn-lg - Update CLAUDE.md documentation - Update settings.local.json with additional permissions Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-16fix: simplify breadcrumb component (WIP - rendering issue to investigate)Danilo M.1-16/+3
2026-04-16feat: add breadcrumb navigation componentDanilo M.1-0/+20
- Create breadcrumb.html partial with Home > Articles > Title structure - Support both English and Italian language versions - Add breadcrumb and breadcrumb-separator CSS classes - Integrate breadcrumb into article detail pages - Rebuild CSS: main.min.css updated Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-16feat: add header nav and hamburger menu styling with JS handlersDanilo M.1-3/+64
- Add header, nav-link, header-actions component CSS - Add menu-overlay and menu-nav component CSS - Update hamburger-menu.html with vanilla JS handlers: - openMenu/closeMenu functions - ESC key support - Click outside to close (backdrop click) - Menu link auto-close - Scroll lock when menu open - Replace Alpine @click with id-based event listeners - Rebuild CSS: main.min.css updated Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-04-16feat: add card component with hover lift and glow effectsDanilo M.1-5/+5
- Add .card base component with border, rounded corners, glow shadow - Add .card:hover state with translateY(-2px) lift and enhanced glow - Add .card-image, .card-body, .card-title, .card-excerpt, .card-footer semantic classes - Refactor article-list-item.html to use card component classes - Rebuild CSS: main.min.css updated Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
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.1-1/+1
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.1-1/+1
2026-04-16fix: add backdrop-filter blur to footer via CSS with vendor prefixDanilo M.1-1/+1
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