Overview
The extension gives SharePoint administrators one configuration list for time-bound maintenance, outage, success, warning, and informational banners. It evaluates site, user, and group targeting before rendering in SharePoint's top placeholder.
Interface evidence
Problem and solution
Page-by-page announcements do not scale across a tenant. This solution separates message administration from page authoring: list items define content, schedule, priority, targeting, links, countdown behavior, dismissal, and refresh timing.
Key features
- Start/end scheduling, ascending priority, and a five-banner query limit.
- Target and exclusion matching against site URLs and paths.
- Direct-user, SharePoint-group, and Graph transitive-group targeting.
- Critical, warning, success, and informational treatments.
- Optional links, new-tab behavior, countdowns, local dismissal, and automatic refresh.
Engineering decisions
The recovery preserved the original SPFx 1.20.0 toolchain and PnPjs 4.19.0 rather than silently upgrading frameworks. The rebuilt package retains authoritative IDs, permissions, feature metadata, and behavior markers while documenting unavoidable bundle-hash differences.
Security and governance
Graph audience evaluation requires tenant approval for GroupMember.Read.All. Version 1.3.4 removes the recovered organization-specific URL and accepts an optional configurationSiteUrl property, defaulting to the current web.
Integration contract
What this project demonstrates
- Recovering and validating a production solution from an authoritative deployment artifact.
- Separating centralized administration from tenant-wide presentation.
- Combining SharePoint, SPFx, PnPjs, and Graph audience evaluation.
- Publishing responsibly by removing tenant-specific configuration and documenting permissions.