TIMELINE / ACTIVITY FEED: Chronological feed of interactions
ICONS: primary | blue | green | red | orange | magenta
REUSES: collapsible_controller.js for expand/collapse

Vertical stack with left gutter for type icons and a 2px connector line. Each activity tw-card expands on click to reveal type-specific detail content. Used in enquiry records to show all interactions with a family.

Activity Feed

Full demo: Filter pills, 8 activity items (one per type), expand/collapse, and skeleton loading toggle. Click any tw-card header to expand its detail content.

8 items
From: admissions@school.edu Outbound
To: jack.davies@email.com
Opened Clicked

Dear Mr Davies,

Thank you for your enquiry about Oscar's admission to our school. We're delighted to share the next steps in the process.

Please complete the attached form at your earliest convenience. If you have any questions, don't hesitate to contact us.

Child's Name
Oscar Clarke
Year Group
Year 2
Parent Name
Jack Davies
Email
jack.davies@email.com
Phone
07700 123456
Source
Open Day
New Engage

Changed by Sarah Mitchell

Event
Year 2 Open Day Tour
Date
Saturday, 15 March 2026 at 10:00 AM
Attendees
Jack Davies + 1 guest
Status
Confirmed

Spoke with Jack Davies regarding Oscar's transition from current school. Father expressed interest in before/after school clubs and sport provision.

Follow up: send prospectus and club timetable. Father also asked about bursary options — refer to finance team.

Added by Sarah Mitchell

To: 07700 123456 Outbound
Hi Jack, just a reminder about Oscar's Open Day tour this Saturday at 10am. We look forward to seeing you! — Admissions Team

Delivered

Oscar_Clarke_School_Report_2025.pdf

PDF · 2.4 MB · Uploaded by Jack Davies

Verified

Enquiry was automatically assigned based on year group routing rules.

Rule: Year 2 enquiries → Sarah Mitchell
<div class="tw-timeline"><div class="tw-timeline-item" data-controller="collapsible">...</div></div>

Icon Color Variants

Colors: Mirror the avatar component's 100/700 shade pattern. Use .timeline-icon-{color} to set the background and foreground colour.

primary
blue
green
red
orange
magenta
<div class="tw-timeline-icon tw-timeline-icon-blue"><i class="fa-regular fa-envelope"></i></div>

Skeleton Loading

Loading state: Shimmer placeholder items with animated gradient. Use .timeline-skeleton-item inside a .timeline container.

<div class="tw-timeline-skeleton-item">...</div>

Date Separators

Date grouping: Use .timeline-date-separator between items to group activities by date. Place as a sibling of .timeline-item inside the .timeline container.

Today

Automatic acknowledgment email sent to jack.davies@email.com confirming receipt of Oscar's enquiry form.

Submitted via Online Portal.

Yesterday
New Under Review

System

Online Booking · 2 attendees

Last Week

Very interested in music programme — child has Grade 3 piano, looking at joining orchestra. Also asked about bursary options.

James Parker

<div class="tw-timeline-date-separator">Today</div>

Compact Variant

Drawer/sidebar size: Add .timeline-sm to the .timeline container for smaller icons (28px), tighter spacing, and compact typography. Ideal for detail panels and narrow sidebars.

Timeline 6 activities

Submitted via Online Portal.

From: jack.davies@email.com Received

Thank you for hosting us at the Open Morning. Oscar really enjoyed the science lab tour.

2 attendees · Confirmed

New Engage

Sent to +44 7700 900XXX

Enquiry auto-created from Open Day registration form on school website.

<div class="tw-timeline tw-timeline-sm">...</div>

Compact Skeleton

Compact loading state: Skeleton placeholders adapt to the .timeline-sm modifier with smaller icons and tighter spacing.

<div class="tw-timeline tw-timeline-sm"><div class="tw-timeline-skeleton-item">...</div></div>

Empty State

No activity: When no timeline items exist, show a helpful empty state with an explanation and suggested action.

No activity yet

Interactions with this family will appear here as they happen.

Empty state content inside a <div class="tw-timeline"> container

In-Context: Enquiry Sidebar

Realistic usage: Timeline inside a drawer-width tw-card with header, compact variant, and a "View all" action — as it would appear in an enquiry detail sidebar.

Activity 12

Sent to jack.davies@email.com

Via Online Portal

New Engage
<div class="tw-card tw-card-flat"><div class="tw-card-body"><div class="tw-timeline tw-timeline-sm">...</div></div></div>