client under nda

A Global Financial Services Firm

one platform, every desk's own dashboard

We cannot name this client. Everything below is the work itself, described in full without identifying them.

A Global Financial Services Firm product screens
A command centre where risk managers compose live dashboards from pluggable internal data providers, and every business unit delivers its own.

the challenge

Risk and fixed-income teams analyse data daily, but each business unit draws on different internal sources and wants them presented differently. A single fixed dashboard was never going to survive contact with them.

objectives

  • Replace an existing internal risk tool with something the firm can grow without us, under strict isolation: users belong to several business units, and data sources, workspaces and individual panels each need independent access control.

our solution

A monorepo holds the API, the UI, and three shared libraries (data providers, panel UI, common types) that host applications consume as submodules. Write a data provider or a panel type, register it, and it appears in the platform; the core does not change.

The hierarchy is business unit, workspace, panel. Workspaces clone, stay private or shared within a unit, and live in an infinitely nested per-user folder tree with drag-and-drop. Workspace variables can be static or time-aware ('first day of the month', 'last month'), and panel filters bind to them and recompute on reload.
Filter forms generate from the validation schemas the data providers already declare, so a new endpoint arrives with a working filter UI and typed GraphQL queries and nobody writes form code. Panels swap visual units without disturbing layout, a selection in one panel re-filters the others over an event bus, live changes broadcast to every open session over subscriptions, and endpoint responses cache in Redis under per-endpoint policies. Authentication runs on the firm's corporate single sign-on.
project-slider-img
project-slider-img