Commit Graph
15 Commits
Author SHA1 Message Date
George Cushen ae338f0ba0 feat(authors): preserve entered casing and links for author names
- keep raw front-matter author strings as preferred display when no profile exists
- fall back to title-cased humanized slug only as last resort to avoid lowercase initials
- render authors directly from Params order and resolve links via taxonomy pages when present

Fix https://discord.com/channels/722225264733716590/1457522006462435541/1458539152160067784
2026-01-07 20:21:14 +00:00
George Cushen 62b8f3f8f6 feat: schema optimization
Reviewed all 27 block schemas in modules/blox/blox against their block.html implementations and applied best-practice optimizations. Here's what was updated:

Schemas Updated with New Properties

Schema	Changes
cta-button-list	Added label, name, link aliases; added new_tab boolean; changed required to anyOf for flexibility
dev-hero	Added content as required; added design.animations boolean
faq	Added title/text aliases for items; added padding_sm and defaults to spacing arrays
knowledge-categories	Added link field per category item; added minimum: 0 for count
portfolio	Added design.animations boolean; added sort_by enum
tech-stack	Added design.animations boolean

Schemas Updated with Improved Descriptions & Enums

Schema	Improvements
collection	Added sort_by enum; improved view description; changed columns to integer with min/max constraints
resume-experience	Added $comment documenting author profile fields (button, tags, etc.)
resume-skills	Added $comment documenting skill group structure
resume-awards	Added $comment documenting award item fields
resume-languages	Added $comment documenting language level conversions
resume-biography	Enhanced avatar size description with pixel values
resume-biography-3	Enhanced avatar/name size descriptions
stats	Improved statistic description with formatting examples
hero	Clarified no_padding description with Tailwind classes
logos	Enhanced display_mode description with layout behaviors
research-areas	Enhanced layout description with style explanations
team-showcase	Added sort_by enum with common values
search-hero	Added examples array for suggestions
testimonials	Added image processing note and examples
cta-image-paragraph	Added responsive image processing note
features	Enhanced icon description with pack formats and examples

Schemas Already Well-Aligned
These schemas were already in good shape and required no changes:
contact-info, cta-card, hero, markdown, stats, testimonials, trending-questions

Notes

New alias fields (label/name/link in buttons, title/text in FAQ items) provide backward compatibility with alternate naming conventions used in templates
The $comment fields document author profile data structures that aren't directly in the schema but are consumed by resume blocks
2026-01-07 19:58:32 +00:00
George Cushen 09eb7f7b18 feat: harden block inputs (batch 2)
Finished hardening the remaining blocks by guarding content/design maps, normalizing list inputs, coercing numeric/boolean values, and sanitizing links; also tightened scroll target handling in block.html.

Changes

Normalized portfolio tags/tech stacks/links, made archive defaults safe, and ensured filter JS uses JSON-safe tags in block.html.

Validated research area layouts and item fields, added safe media/link handling, and made CTA rendering resilient in block.html.

Hardened resume blocks for profile fields, buttons/links, and dates using try with time in block.html, block.html, and block.html.
Improved numeric parsing and labeling for language/skill meters in block.html and block.html.

Added guarded items and predictable grid classes in block.html.

Sanitized badge/title/suggestions/stats rendering in block.html, normalized tech categories and made list style exclusive in block.html, and hardened testimonials’ items/image handling in block.html.

Normalized dynamic/static question data, badges, and safe links in block.html.
2026-01-07 19:18:50 +00:00
George Cushen 98f0d201c1 feat: harden block inputs (batch 1)
Hardened 1st batch of five homepage blocks by normalizing config types, clamping unsafe values, and guarding bad inputs so user‑supplied params fail safe without template errors.

Changes

coerce_bool.html and coerce_int.html: added shared coercion helpers for consistent, safe defaults across blocks.

block.html: sanitized content/design inputs, robust user_groups parsing, safer role/affiliation/interest/link handling, and CTA URL validation.

block.html: guarded avatar/banner/name/headings/bio, safe
button/link resolution, and resilient parsing for affiliations, education, interests, and social links.

block.html: hardened filters (kinds/folders/tags), safer sort/order handling, clamped numeric params, and archive link safety/fallbacks.

block.html and block.html: defensive content rendering, clamped overlay opacity, and safe button link handling.

schema.json, schema.json, schema.json: added view enum entries, added new_tab, and Biome formatting applied.
2026-01-07 18:23:51 +00:00
George Cushen 3651909ac2 fix: team-showcase block enhancements 2026-01-07 17:53:09 +00:00
George Cushen b199122d65 style: improve spacing between groups 2026-01-07 17:33:36 +00:00
George Cushen 8ca8e40a8f feat(team-showcase): polish sorting, layout, and docs for labs/startups
- default to last-name sort with numeric-friendly keys for weight/graduation_year
- support per-group sorting, optional empty-state, and role fallback to affiliation
- add grid/interest caps, alignment controls, and avatar initial placeholders
- expose graduation_year/weight/name_family_pref in profiles; update schema/README
2026-01-07 16:04:26 +00:00
George Cushen 85307a8097 feat(authors): preserve author casing when profiles are missing
- retain raw front-matter author strings as display names when no profile data is present
- title-case humanized slug only as last-resort fallback to avoid lowercase surnames
- reduce need for author profile files while keeping names correctly capitalized

Fixes https://discord.com/channels/722225264733716590/1457522006462435541
2026-01-06 20:13:34 +00:00
George Cushen bfdcb6603c feat: port Markdown Slides template from Wowchemy/Bootstrap 2026-01-06 20:12:26 +00:00
George Cushen 3526fb1ca1 feat: add dev portfolio template and add dev-hero, portfolio, tech-stack blocks
Also, fix card view to use theme colors rather than hard-coded colors
2026-01-05 20:38:38 +00:00
George Cushen ad2af1f352 refactor: repo rename 2026-01-02 22:07:38 +00:00
George Cushen cdaf97afb2 chore: bump v 2026-01-02 21:18:10 +00:00
George Cushen 43530f4a92 refactor: module versions 2026-01-02 21:13:36 +00:00
George Cushen 66cba27dc6 refactor: module versions 2026-01-02 21:06:55 +00:00
George Cushen f4280ddb1c refactor: rename modules and update migration docs
BREAKING CHANGE
Module paths moved to `github.com/HugoBlox/kit` with new names:
- core `blox-tailwind` → `blox`
- analytics → `analytics`
- netlify → `integrations/netlify`
- slides (reveal) → `slides`
Update go.mod, module.yaml/params, scripts, tests, and v0.11 migration guide accordingly.
2026-01-02 20:59:48 +00:00