Pre-1.0. Not intended for public use yet. The API is subject to undocumented change, and these pages may already be wrong about it.

Skip to content

Glossary ​

Terms used to define, publish, retrieve, and render an activity feed.

Activities and Roles ​

TermMeaning
activityOne published fact, with a verb, roles, and publication time.
verbThe action recorded as a string, such as upload. See Activity Verbs.
actor / object / target / contextWho acted, what they acted on, what the action was directed at, and its container. Recording covers all seven roles.
entityA model or party filling a role. Each payload role contains an entity object or null.
FeedableA model that can appear in an activity and provide its label, link, and other feed details.
partyA named participant without an application model, such as a system or integration.
anonymousNo actor was recorded, so who acted is unknown. This includes deliberately using Storyfeed::anonymous() or by(null); it does not mean nobody acted.
empty roleA role with no recorded entity. Roles other than the actor are empty, never anonymous.

Definitions and Stories ​

TermMeaning
Story classA class that defines activities. A resource class declares verbs; a Story subclass receives data and produces an activity.
feed fileroutes/feed.php, where Story:: declares headlines and activity behaviour. It defines no HTTP routes.
headlineThe displayed wording for an activity or group.
headline templateA headline with tokens such as :actor, returned in headline_template. See The Feed File.
keep latestA verb policy that keeps only the latest matching activity in the feed.

Grouping ​

TermMeaning
aggregationCombining activities that share values, such as the same actor or target, into one feed item.
groupRelated activities represented by one item, such as one customer's orders at the same shop. See Retrieving Feeds.
axisWhat a group has in common, such as the same actor, verb, and target. This is the API term for its grouping rule. See Aggregation.
repeatThe fallback group for one actor repeating a verb on the same object type with the same target.
thresholdThe minimum needed to form a group, such as three distinct actors. Set in grouping.policy.
group an activity is shown inThe one group selected for an activity in live(), falling back to repeat.
choosing which group showsSelecting among groups whose thresholds are met, with repeat as the fallback. This runs at publication and through storyfeed:curate. With grouping.curate set to false, live() shows repeats only.
grouping periodThe calendar hour, day, week, or month a group spans. Daily by default.
group nodeA group represented in the payload. See Group Nodes.
sampleA limited list of distinct entities in a group; distinct contains the full counts.
countThe number of activities in a group. distinct.actors counts different actors.
compositeOne activity about multiple objects.
batchAn actor's activities collected together. This is not a Laravel job batch.
windowHow long Storyfeed waits for more activities before closing a batch.

Reading Feeds ​

TermMeaning
retrieve / queryAccess the database for feed data.
returnProduce a PHP value.
itemOne entry in a feed, represented by FeedItem or an array from $page->items().
nodeA payload representation, such as an activity node or group node.
named feedA reusable definition of a feed's scope, verbs, and read mode.
read modeThe API choice of log(), live(), or summary(). See Retrieving Feeds.
liveThe default read mode, with each activity shown in one selected group.
summaryThe mode that summarises an actor's activities per calendar period using per-verb phrases, displayed as a summary row.
logThe mode that returns one item per activity without grouping.
cursorAn opaque page position passed back when requesting another page.
sync_tokenAn opaque value that changes when existing feed history changes. Discard accumulated nodes and fetch again when it changes. See Synchronization.

Rendering ​

TermMeaning
render / displayProduce output for the frontend.
rowAn item drawn on screen.
tokenA placeholder such as :actor in a headline template.
iconAn activity's symbol, declared with icon(). Your frontend maps its token, such as shopping-bag, to artwork.
glyph / glyph()The payload key and FeedItem method containing the activity's icon token.
intentThe icon's meaning, declared with intent() and returned in glyph_intent, such as success. Storyfeed defines no fixed vocabulary. See Icons and Intents.
icon imageA model's picture in entity.media.icon, such as an avatar or logo. See Image Slots.
bodyTyped content beneath a headline, such as an excerpt or list. Its kind is its body type.
excerptA body containing quoted words, optional source attribution, and a flag indicating whether the text is partial. It belongs to the entity snapshot.
degradedAn entity with no snapshot yet, returned with label: null and url: null. Its activity still appears. See Handling Missing Values.
redundantAn activity with a tombstone in a role selected by its verb for redundancy checks. It still records what happened. See Redundant Roles.

Storage and Maintenance ​

TermMeaning
snapshotCached label, data, and body fields for an entity.
trickleMaintenance that creates missing snapshots, refreshes outdated ones, and finds deletions not reported by model events.
tombstoneA reference to a deleted model, including its former type and deletion time. Its activities may remain.
retentionHow long activities remain before storyfeed:prune permanently deletes them.
healerAn application policy that selects activities for soft-deletion because their source is permanently gone.
soft-deleteMark an activity deleted without permanently removing its stored record. This is what storyfeed:heal does.

Released under the MIT License.