Skip to content

Widget: Timeline#281

Draft
Copilot wants to merge 6 commits intomainfrom
copilot/add-stylish-timeline-widget
Draft

Widget: Timeline#281
Copilot wants to merge 6 commits intomainfrom
copilot/add-stylish-timeline-widget

Conversation

Copy link
Copy Markdown

Copilot AI commented Mar 21, 2026

Adds a Timeline widget to Blashing.Widgets, porting the dashing-timeline community widget to Blazor as a pure HTML/CSS implementation.

New files

  • Timeline/TimelineItem.csrecord TimelineItem(string Date, string Title, string? Color = null)
  • Timeline/TimelineWidget.razor[.cs/.css/.scss] — Blazor component inheriting BaseWidget; renders a vertical timeline list with dot markers, a centred connecting line, date labels on the left, and event titles on the right
  • Timeline/_/ — Original dashing .html, .scss, .coffee sources preserved as reference
  • Blashing.Widgets.Tests/TimelineWidgetTest.cs — Markup and parameter-binding tests
  • Blashing.Stories/Stories/TimelineWidget.stories.razor — Stories entry
  • Blashing.Shared/Pages/AdditionalWidgets.razor — Added TimelineWidget example in both the inline section and the dashboard grid
  • Blashing.Shared/_Imports.razor — Added @using Blashing.Widgets.Timeline;

Widget details

Default background #4b4b4b, timeline line/dots #E8F770 — matching the original widget's colour scheme.

The layout mirrors the original dashing-timeline: each row uses flexbox with the date right-aligned on the left, a dot centred on the vertical line, and the event title on the right. Each dot has a white semi-transparent border ring and supports an optional per-item colour via the Color property on TimelineItem (falls back to #E8F770 when not set).

<TimelineWidget Title="Deployments"
                Items="@(new List<TimelineItem> {
                    new("09:00", "Stand-up",    "#E8F770"),
                    new("14:00", "Deploy",      "#FF6B6B")
                })"
                MoreInfo="Today"
                UpdatedAtMessage="@DateTime.Now.ToShortTimeString()" />

Preview

Original prompt

This section details on the original issue you should resolve

<issue_title>Widget: Timeline</issue_title>
<issue_description>See #213

Timeline

Stylish timeline widget for Dashing.io

https://github.com/aysark/dashing-timeline

Preview</issue_description>

Comments on the Issue (you are @copilot in this section)


📱 Kick off Copilot coding agent tasks wherever you are with GitHub Mobile, available on iOS and Android.

Co-authored-by: AlexHedley <1573469+AlexHedley@users.noreply.github.com>
Agent-Logs-Url: https://github.com/AlexHedley/blashing/sessions/2c65fc14-314f-4d0a-9971-4b92359a5424
Copilot AI changed the title [WIP] Add stylish timeline widget for Dashing.io Widget: Timeline Mar 21, 2026
Copilot AI requested a review from AlexHedley March 21, 2026 22:59
@AlexHedley
Copy link
Copy Markdown
Owner

@copilot add an example to AdditionalWidgets.razor

Copy link
Copy Markdown
Author

Copilot AI commented Mar 21, 2026

@copilot add an example to AdditionalWidgets.razor

Done in 868e1de. Added a TimelineWidget example to both the inline section and the dashboard grid in AdditionalWidgets.razor, and registered @using Blashing.Widgets.Timeline; in _Imports.razor.

@AlexHedley
Copy link
Copy Markdown
Owner

@copilot show the example as a screenshot

Copy link
Copy Markdown
Author

Copilot AI commented Mar 21, 2026

@copilot show the example as a screenshot

Here's the TimelineWidget rendered on the Additional Widgets page — shown both as a standalone widget in the inline section and inside the dashboard grid:

AdditionalWidgets with TimelineWidget

@AlexHedley
Copy link
Copy Markdown
Owner

@copilot make the timeline look like the original widget

Copy link
Copy Markdown
Author

Copilot AI commented Mar 24, 2026

@copilot make the timeline look like the original widget

Done in 17e1768. The timeline now mirrors the original dashing-timeline layout — the date is right-aligned on the left of the vertical line, the yellow dot sits centred on the line, and the event title appears to the right. The vertical line itself is also centred horizontally within the widget.

TimelineWidget updated layout

@AlexHedley
Copy link
Copy Markdown
Owner

@copilot add a border around the points and show different colours for different items

Copilot AI and others added 2 commits March 24, 2026 21:31
Co-authored-by: AlexHedley <1573469+AlexHedley@users.noreply.github.com>
Agent-Logs-Url: https://github.com/AlexHedley/blashing/sessions/3fcaea2e-a675-4f95-a5f6-d3f160650967
Copy link
Copy Markdown
Author

Copilot AI commented Mar 24, 2026

@copilot add a border around the points and show different colours for different items

Done in 08b6c4d. Each dot now has a white semi-transparent border ring (box-shadow: 0 0 0 3px rgba(255,255,255,0.5)) and an optional per-item colour via a new Color property on TimelineItem (defaults to #E8F770 when not set).

new("09:00", "Stand-up",      "#E8F770"),  // yellow
new("10:30", "Code Review",   "#54C7EC"),  // blue
new("14:00", "Deploy",        "#FF6B6B"),  // red
new("16:30", "Retrospective", "#54EC7B"),  // green

Timeline with coloured dots and border rings

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Widget: Timeline

2 participants