Koala logo Design
Esc
No matches for “
↑↓ navigate open Esc close
Components Activity timeline

Activity timeline

Alternating left/right timeline grouped by day, with sticky day headers and sticky author avatars. Designed for incremental rendering — pass continuation state on the model so appended pages keep the same author on the same side and never duplicate the day header.

<koala-activity-timeline>

Canonical

Today
  1. Jane Doe accepted the quote

  2. Jane Doe added a note

  1. Marcus Lee created the quote

Yesterday
  1. Marcus Lee set the referrer

The most-used shape. Each author groups on one side of the line. A new author flips the side; day boundaries reset the day-header sticky behaviour but preserve the alternation.

Variants

3 variants
Today
  1. Jane Doe accepted the quote

  2. Jane Doe added a note

  1. Marcus Lee created the quote

Yesterday
  1. Marcus Lee set the referrer

Default
ShowEntityLink=true
Today
  1. Jane Doe edited a note

  1. Marcus Lee uploaded a document

Visibility icons
ShowVisibilityIcons=true
Today
  1. Jane Doe accepted the quote

  1. Marcus Lee created the quote

Scoped
ShowEntityLink=false

States

1 state
Today
  1. Jane Doe accepted the quote

  2. Jane Doe added a note

  1. Marcus Lee created the quote

Yesterday
  1. Marcus Lee set the referrer

Default
Stateless renderer. Sticky behaviour kicks in when the parent scroll container moves.

Props

ActivityTimelineModel
Property Type Notes
Days IReadOnlyList<ActivityTimelineDay> One group per day, newest-first.
ShowEntityLink bool Hides the entity link on detail pages already scoped to one entity.
ShowVisibilityIcons bool Adds client / partner audience icons next to each timestamp.
StickyHeader ActivityTimelineSticky Top12 drops the sticky offset under a tab strip; None sits flush.
PreviousDate DateOnly? Continuation state from a prior batch; suppresses a duplicate day header.
PreviousUserId Guid? Continuation state; decides whether the first row starts a new person-group.
PreviousPersonGroupIndex int? Continuation state; keeps the side alternation in step.

Do & don't

Today
  1. Jane Doe accepted the quote

  2. Jane Doe added a note

  1. Marcus Lee created the quote

Yesterday
  1. Marcus Lee set the referrer

Do Pass the continuation state on load-more renders so the appended batch joins seamlessly with the prior one.
  1. Jane Doe accepted the quote
  2. Marcus Lee created the quote
  3. Marcus Lee set the referrer
Don't Don't render activity as a flat list. The author grouping and day header are what make "what happened here" scannable.