User Manuals & Training Portal
Confidential · 2024
A secured, searchable, filterable user manual and training portal — leveraging GCP Cloud Storage for content, Articulate Rise 360 for training modules, SharePoint lists for metadata, a .NET API in front, and a React frontend over a protected sub-domain.
- Period
- 2024
- Domain
- FinTech / Wealth Management
- Stack
- GCP Cloud Storage
- Articulate Rise 360
- SharePoint Lists
- .NET API
- React
- Signed URLs
Across the line of business, user manuals and training material lived in three or four places — file shares, a SharePoint site, attached PDFs, ad-hoc training portals. Finding the current version of anything took five minutes and the right colleague.
The portal consolidates that surface. Manuals and training modules live in GCP Cloud Storage; Articulate Rise 360 publishes the interactive training experiences; SharePoint lists hold the metadata catalog; a .NET API stitches them together; a React frontend renders a searchable, filterable browsing experience over a protected sub-domain. Every download is a short-lived signed URL.
— 01 —
GCS as the content store, SharePoint as the metadata catalog.
CostTwo systems of record to keep in sync.
WinGCS handles the bytes well and signs URLs cleanly; SharePoint is where the business already manages classification, ownership, and review schedules. Forcing one tool to do both jobs would have failed at one of them.
— 02 —
Articulate Rise 360 for training modules, not a homegrown player.
CostVendor-coupled training experience.
WinAuthoring is a self-serve experience for the training team; we don't build a CMS or an LMS to ship a portal.
— 03 —
.NET API as the only thing the React app talks to.
CostAn extra hop between the browser and GCS / SharePoint.
WinAuth, signed-URL minting, search, and filtering live in one place. The React app never sees a SharePoint URL or a GCS bucket name.
— 04 —
Short-lived signed URLs for every artifact download.
CostClients have to refresh URLs; downloads can't be hot-linked.
WinNo content leaves the protected sub-domain without an authenticated, time-bound link. Audit logs capture every access.
— 05 —
Protected sub-domain with SSO at the edge.
CostOne more sub-domain to operate.
WinAccess is controlled by the existing identity provider; users don't get a second login. Every request is authenticated before any handler runs.
- Single, searchable, filterable surface for all user manuals and training modules across the line of business.
- Self-serve training authoring through Articulate Rise 360 — content team ships without engineering involvement.
- Every artifact access is authenticated and audited; no public links.
- Sub-domain protected by SSO; same identity as the rest of the estate.
Software Solution Architect. Designed the content/metadata split, the .NET API contract, the signed-URL strategy, and the sub-domain auth pattern. Implemented the integration glue between GCS, SharePoint, Rise 360, and the React frontend.
If we did it again I'd push more of the search surface into a dedicated index instead of querying SharePoint lists at request time — would lower the p95 noticeably for large catalogs.