- Add dynamic JavaScript loading system for blocks
- Implement multi-layer background support (texture + gradient)
- Add Tailwind color variable conversion in templates
- Support light/dark background color modes
- Prevent framework CSS conflicts with custom styles
- Fix Hugo documentation inconsistency: mount hugo_stats.json to match @source directive
- Module provides all Tailwind v4 configuration - zero user config required
- Add comprehensive color variables safelist for dynamic YAML usage
- Enable build stats and cachebusters for optimal performance
- Maintain hugo_stats.json in .gitignore (auto-generated per site)
Benefits:
- Automatic Tailwind v4 support for all existing users (no breaking changes)
- Proper Hugo Stats content detection with corrected paths
- Module handles all complexity - users just import and use
Add standalone option to update starter templates with latest module
commits using Go pseudo-versions instead of creating new release tags.
- New functions for commit info extraction and pseudo-version formatting
- Updates go.mod files with v0.0.0-YYYYMMDDHHMMSS-abcdefabcdef format
- Updates Hugo versions in hugoblox.yaml, netlify.toml, and deploy.yml
- Uses deploy.yml workflow filename (GitHub Pages convention)
- Supports --dry-run for preview and --yes for execution
- Perfect for GitHub UI workflows and development environments
Validated with:
`poetry run python scripts/release_modules.py --update-starters-to-commits --dry-run --log-level INFO`
- Update view-starter-dev.sh to default to academic-cv if no starter specified
- Update view-starter-prod.sh to default to academic-cv if no starter specified
- Update usage documentation to show starter name as optional parameter
- Maintain backward compatibility with existing usage patterns
Fix progress bar display in resume-languages block: Correct stroke-dashoffset calculation to show accurate progress. Previously, progress bars displayed the gap segment (remaining progress) starting from the first quadrant, whereas for 80% progress it should appear in the 4th quadrant, causing the visual representation to appear inverted.
See #3252
Change 'items-center' to 'items-start' to prevent shorter content from centering vertically, ensuring the Skills and Hobbies categories align at the same top level regardless of content size/height differences.
- add workflow_dispatch to run splitter from the UI
- add workflow_run to follow “Release HugoBlox Modules” completion
- guard job to run only when upstream conclusion == success
- add comment: upstream workflow `name:` must match exactly
- retain push trigger on main
- Refactor card layout with glassmorphism, improved shadows, and micro-interactions
- Add structured content_meta support (content_type, difficulty, prerequisites, trending)
- Implement trending overlay badge on image with i18n support
- Add configurable metadata display (show_date, show_read_time, show_read_more)
- Optimize for mobile with responsive metadata hiding and layout stacking
- Enhance image handling with fill_image toggle and AVIF/WebP support
- Unify article-grid and card views for consistency across theme
- Add reading time calculation and improved accessibility (ARIA labels, focus states)
- Support primary color category pills and author avatars with proper sizing
Modern re-design of the main Resume block.
Awards block icons are no longer tied to the 'brands' pack - any pack can be used and specified in the form `icon: <pack>/<icon>
Refactor Tailwind CSS theming to support full primary/secondary palettes
Refactors the theme system to correctly apply primary and secondary color palettes from theme packs.
Previously, Tailwind's build-time resolution of CSS variables in the `@theme` block caused theme pack colors to be overridden by the default blue theme.
This commit resolves the issue by adopting a best-practice, two-layer token system:
1. All theme packs now define `--hb-primary-*-rgb` and `--hb-secondary-*-rgb` variables with raw RGB values.
2. The core `theme.css` now defines `--color-primary-*` and `--color-secondary-*` inside the `@theme` block using a `rgb(var(...))` function. This makes Tailwind aware of the themeable color names so it can generate all necessary utilities (`bg-`, `text-`, `ring-`, etc.) while ensuring the final color value is resolved in the browser at runtime.
This change fixes the build error related to unknown utility classes (e.g., `ring-primary-500`) and ensures that the selected theme pack is correctly applied across all components.
- Fix dark mode code block styling in chroma.css (background stays bright issue)
- Resolve JavaScript errors with window.hbb object initialization
- Fix Mermaid.js color parsing errors with proper CSS variable fallbacks
- Move inline JavaScript to external files for CSP compliance
- Create dedicated hb-search.js for search functionality
- Add proper error handling and validation for PagefindUI initialization
- Update .stylelintrc.yaml to disable no-descending-specificity rule
- Fix remaining lint issues: flex-flow shorthand and kebab-case IDs
- Ensure theme toggler functionality works correctly
Resolves regressions introduced during Tailwind 3→4 migration.
All functionality now works in both light and dark modes.
Refactored from legacy layouts/partials/blox/* system to:
- blox/<block-id>/block.html source structure
- Hugo module mounts to layouts/partials/hbx/blocks/<block-id>/block.html
- Resolver-based lookup
- Support for data-driven pages and client islands
optimize site.AllPages with Site.Scratch guard and scope to pages only
- Add Site.Scratch guard to run init logic only once per build
- Limit .Content pre-warming to pages (Kind == 'page') to reduce overhead
- Preserve Hugo concurrency workaround for Page.Store and backlinks
- Maintain existing block configuration preloading for landing pages