| Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
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>
|
|
- 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>
|
|
- 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>
|
|
- 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>
|
|
- 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>
|
|
- 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>
|
|
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>
|
|
- 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>
|
|
- 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>
|
|
- 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>
|
|
Hugo v0.156.0+ requires shortcodes to be in layouts/shortcodes/ directory.
Moved all shortcodes (gravatar, image, gallery, contact-form) to correct location.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
|
|
|
|
menu state management
|
|
to dedicated theme-toggle.js
|
|
|