✨ v0.15.0 — Timeline, Rating, Range & Skeleton
What's New
TimelineComponent + TimelineItemComponent
Vertical timeline layouts for activity feeds, order trackers, milestone lists, pipelines, and threaded conversations. TimelineComponent wraps a list of TimelineItemComponent entries, each supporting an icon, timestamp, title, body, and optional connector styling. Ships with eight preview layouts (alternating, thread, pipeline, and more).
Form::RangeComponent
A styled range input (<input type="range">) with a Stimulus controller that optionally mirrors the live value into a display element. Supports min, max, step, disabled state, and a with_value_display slot. Available via form_builder as f.range_field.
RatingComponent
An accessible star-rating input (and read-only display) backed by a Stimulus controller. Options include max (number of stars), size (sm/md/lg), and readonly. Integrates cleanly into forms or standalone display contexts.
SkeletonComponent
A loading-placeholder component for painting skeleton screens before content loads. Renders shimmer blocks in common shapes — single lines, stacked lines, cards, and avatar-with-text layouts — all with an optional animated: false toggle to disable the pulse.
What Changed
CarouselComponent — new arrows: option
Adds an arrows option (default: true) that controls whether previous/next navigation arrows are rendered. Useful for autoplay-only or pager-only carousels where arrow buttons are unwanted.
DialogComponent — sm width and validated options
A sm entry has been added to the WIDTHS enum. All four option values (position, width, height, variant) are now validated through fetch_or_fallback in the initializer, so invalid values gracefully fall back to the default instead of producing unexpected output.
Form::InputComponent — two new type values
datetime and currency have been added to AVAILABLE_TYPES, rounding out common form field needs.
What Was Removed
COMPONENT_AUDIT.md
The internal component audit file has been removed. Its purpose has been superseded by the new Roadmap doc in the changelog.
Dev Process
New component test suites
Full unit test coverage was added for all four new components (TimelineComponent, Form::RangeComponent, RatingComponent, SkeletonComponent), along with expanded tests for DialogComponent and Form::RangeComponent.
Demo previews for Select and Collection
Preview classes and ERB templates for SelectComponent and CollectionComponent were added to the demo app, making both components fully browsable in Lookbook.
Roadmap doc
A living roadmap has been added at demo/app/docs/changelog/roadmap.md.erb, giving contributors a single place to track planned components and upcoming API work.