activity-feed component
Drop-in semantic component. See examples, sizes, variants, and source.
Vertical stream of user actions. Wrap each event in
activity-item with an
avatar, content,
and optional actions. Type modifiers
(file, comment,
task, avatar-group)
and state modifiers (unread) layer
on top. Filter pills and loading/empty states ship as part
of the same surface.
Basic Activity Feed
JB
James Brown
updated
2024 Strategy Document
Sarah Wilson
commented on
Q3 Marketing Report
Great progress on the campaign! Looking forward to Q4.
ES
Emma Stone
completed
API Integration
✓ Completed
Activity Types
Mike Johnson
uploaded
Design_v2.fig
Design_v2.fig
2.4 MB • Figma File
RD
Robert Davis
commented
This looks great! Can we schedule a review?
👍 Like
💬 Reply
TM
Tom Miller
flagged
Bug Report
⚠ Warning
Design Team
joined
Project Alpha
Task Status Badges
User
completed task
Success
User
flagged issue
Warning
User
started working on
In Progress
User
encountered error
Error
Unread Activity Items
NW
New User
mentioned you in
Daily Standup
Alice Cooper
replied to your comment
I agree with your suggestion. Let's implement it in the next sprint.
Empty State
No Activity Yet
Activity will appear here once actions are taken
Loading State
Complete Activity Feed Example
JD
John Doe
created
New Project Brief
Sarah Wilson
uploaded
Mockup_Final.sketch
Mockup_Final.sketch
8.2 MB • Sketch File
Mike Johnson
commented on
Q3 Marketing Report
Excellent work on the campaign! The conversion rates exceeded our targets by 15%. Let's discuss scaling this approach for Q4.
👍 Like
💬 Reply
📌 Pin
ES
Emma Stone
completed task
Completed
Design Team
started collaborating on
Website Redesign
Class API Reference
| Type | Class | Usage | Notes |
|---|---|---|---|
| Base | activity-feed |
Outer container — bordered card with stacked items | Always required |
activity-item |
Single event row | Holds .avatar, .content, .actions |
|
activity-filters |
Pill-bar of filter buttons | Use with .activity-filter children |
|
activity-filter |
Single filter pill | Add active for current selection |
|
header |
Top line — .user + .action + .target |
Inside .content |
|
timestamp |
Relative time line | Inside .content |
|
| Type Variants | file |
File-upload event — adds .file-icon + .file-preview styling |
Modifier on activity-item |
comment |
Comment event — adds .comment-bubble + .comment-actions styling |
Modifier on activity-item |
|
task |
Task event — adds .status-badge styling |
Modifier on activity-item |
|
avatar-group |
Multi-user event — adds .avatar-stack + .member-count styling |
Modifier on activity-item |
|
| Status Badge (task) | status-badge success |
Green pill — completed | Inside .task .header |
status-badge warning |
Orange pill — flagged | Inside .task .header |
|
status-badge pending |
Yellow pill — in progress | Inside .task .header |
|
status-badge error |
Red pill — error | Inside .task .header |
|
| States | unread |
Adds blue accent bar on the left edge | Modifier on activity-item |
loading |
Skeleton/pulse animation for placeholder rows | Modifier on activity-feed |
|
empty-state |
Centered empty placeholder with icon + message | Inside activity-feed |