Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Activity Timeline

Activity Timeline Laravel Package

jaocero/activity-timeline

jaocero/activity-timeline is a Laravel package for recording and displaying user activity timelines. It helps log model events and custom actions, then present them as a clean, queryable feed for dashboards and audit views.

View on GitHub
Deep Wiki
Context7

jaocero/activity-timeline is a Laravel package that turns recorded activity logs into a clean, readable timeline. It provides a simple way to present model events, user actions, and audit history in chronological order—ideal for dashboards, admin panels, and record detail pages.

  • Renders activity entries as a chronological timeline
  • Integrates with Laravel Eloquent models and activity logging
  • Drop-in Blade/UI components for dashboards and detail views
  • Configurable ordering and display of timeline entries
Frequently asked questions about Activity Timeline
How do I install jaocero/activity-timeline in a Laravel Filament app?
Install it with Composer using composer require jaocero/activity-timeline, then register the plugin in your Filament panel provider. Because it is a presentation-layer plugin, installation is light: no extra migrations or config publishing are required beyond what Spatie Activitylog already provides. After registering the plugin, add the timeline component to an infolist entry, a custom page, or an action. Confirm your panel provider registration matches the plugin syntax documented in the README for your Filament major version.
Which Filament versions does activity-timeline support?
The package is built for Filament panels and targets the Filament 3 era, but you should verify the exact constraint in its composer.json before adopting it. Because Filament major releases occasionally change component and schema APIs, pin the plugin and Filament versions together in Composer. Check the repository's releases and issues for confirmation of support for your specific Filament version, and run a short spike branch to validate rendering before rolling out.
Do I need Spatie Activitylog installed to use this plugin?
Yes. jaocero/activity-timeline is a renderer, not a logging engine, so it expects a working Spatie Activitylog setup as its data source. You need the Activitylog migrations applied and meaningful log_name, subject_type, subject_id, and causer data flowing into the activity table. Without populated activity records, the timeline will render empty regardless of configuration.
How do I add the activity timeline to a Filament infolist, page, or action?
Add the timeline component to an infolist schema entry, or drop it into a custom page's view, depending on how much layout control you want. For actions, you can render the timeline inside a modal or slide-over so reviewers can inspect history without leaving the record. The typical integration is one component on a single low-risk admin page first, then expanding to infolist entries once filtering and empty states look correct.
Can I filter the timeline by subject, log name, or causer?
The component is designed to scope activities to a model subject, and it can also work with log name and causer data present in your Activitylog records. If you are replacing a bespoke timeline view, map your existing query filters onto the component's supported options rather than duplicating data access in a second query layer. Review the README for the exact filter API in your installed version, and validate results against raw Activitylog queries during your spike.
Does the timeline support pagination or lazy loading for large activity tables?
Activity tables grow quickly, so you should confirm pagination or lazy loading behavior before exposing the timeline to high-traffic records. If the component loads all activities for a subject at once, wrap it in a paginated or limited query and index subject_type, subject_id, log_name, created_at, and causer columns. Test against production-like activity volume rather than a freshly seeded development database.
Does activity-timeline work with a custom Activity model?
Support depends on how the component resolves activities, so check the source and README for whether it references the default Spatie Activity model directly or accepts a configurable model. If you use a custom model that extends Spatie's Activity class and keeps the same table schema, compatibility is usually straightforward. If you have heavily customized the schema, validate in a branch before committing to the package.
How do I prevent users from seeing activities outside their scope?
The plugin is UI-scoped and does not impose authorization on its own, so scope enforcement remains your responsibility. Guard the page or infolist entry with Filament policies or canView checks, and constrain the underlying activity query by tenant, team, or subject ownership as needed. Treat any timeline exposed in an admin panel as a potential data leak if records contain sensitive attribute changes.
Is activity-timeline a replacement for Spatie Activitylog or a general-purpose audit-logging solution?
No. It is a Filament presentation plugin that visualizes activity data already captured by Spatie Activitylog, so Activitylog remains the source of truth for logging, retention, and schema. Teams not using Filament should not adopt this package just to get a timeline; a simple Blade or Livewire component querying the activity table is lower risk. It is also not a compliance-grade audit system on its own.
What are the maintenance risks of this single-maintainer package, and can I fork it?
Adoption signals are modest, with a small star count, no dependents, and a single maintainer, so abandonment and Filament major-version breakage are realistic risks. The package is MIT licensed and small, which makes vendoring or an internal fork legally straightforward and technically contained. Before using it in business-critical admin workflows, document plugin registration, supported versions, filtering conventions, and a fork procedure, and track Filament and Spatie release notes for breaking changes.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo
bernskioldmedia/laravel-harvest
bernskiold/laravel-data-scrubber
bernskiold/laravel-currency-converter
bernskiold/laravel-campaign-monitor
bernskioldmedia/laravel-autotranslate
siberfx/telegram-bot
roy-sandip/laravel-view-extended
gregsphotography/site-builder-core
roy-sandip/laravel-view
anodyne/blade-fluentui-icons
webx-ui/module-catalog-collections