Back to selected work
2026CaravanConcept, design and engineering

Caravan: a global markets and macro dashboard

Caravan is a global markets and macro dashboard. A brief we set ourselves: hold a full trading day across five connected sections that read like one article, not like an off-the-shelf widget pile.

Markets dashboardMacro economyData visualization

Caravan is a global markets and macro dashboard. A brief we set ourselves: hold a full trading day across five connected sections that read like one article, not like an off-the-shelf widget pile. We picked a fixed date, 19 May 2026, so we could test the design against numbers that line up across sections instead of random fillers. Below, the design and engineering choices that hold it together.

What we designed

  • 5SectionsMacro, central banks, markets, active conflicts, outlook
  • 1DayEverything reads against 19 May 2026
  • 7Chart typesDesigned from scratch for the dashboard
Caravan Overview page in light mode. Left sidebar with Overview, Macro, Markets, Events, Outlook and a Snapshot 19 May 2026 footer. Top of frame reads Today's regime, followed by a large headline: Risk-off. Trade truce expiring, geopolitics elevated, dollar weak across G10. Six KPI cards underneath show US Interest Rate 4.13 percent set by the Fed, US Inflation 2.6 percent target 2 percent, US Growth 1.8 percent annual GDP, US Jobless Rate 4.2 percent of the labor force, Manufacturing 49.8 below 50 shrinking, Market Fear 22.8 VIX elevated. Below, a Global tensions panel with a dotted world map and 22 active conflict and policy flux markers. To the right, a Top files panel ranked by severity plus recency lists US–China 90-day tariff truce nears expiration, Israel–Iran direct strikes resume after 6-month pause, Houthi missile barrage targets Red Sea shipping lane, Sudan RSF advance on El Fasher.
The Overview page lays out four pieces: at the top, a synthetic verdict on the day; below, six leading indicators; on the left, a world map of tensions; on the right, a list of news items ordered by severity.

Five sections, one continuous story

A typical finance dashboard puts five sections in front of you and each one stands on its own. We did the opposite. The whole of Caravan sits inside a single day, 19 May 2026: Fed at 4.13% after a cut, ECB at 2.25, Brent at 66 on China demand fears, gold at 3,210 on record. When you move from the Overview to the Macro page you don't switch worlds. You're reading the same moment from a different angle.

We got there by writing the day's story before drawing any chart. One page of plain English: where the macro cycle is, what the central banks are doing, where the dollar is, which active conflicts are pulling on capital. Then every number, every headline, every scenario on the dashboard had to fit that page. When a data point did not square with the rest, we corrected it or rewrote the section that cited it.

The result is editorial coherence. Not five panels. One issue of a magazine.

Caravan Macro page in light mode. Top breadcrumb CARAVAN · SNAPSHOT 2026-05-19, page title Macro briefing, lede about four readings on the global cycle. Section overline INFLATION, title The last mile sticks. Dot plot shows deviation from the 2 percent target by country: BR +2.8pp, IN +2.2pp, GB +0.7pp, US +0.6pp, JP +0.4pp, CA +0.2pp, EU 0.0pp, CN -1.7pp. KPI strip below: US deviation 0.6pp, EU deviation 0.0pp, reference target 2.0 percent. Next section starts: SOVEREIGN CURVES, title Front flat, long re-pricing.
Inflation deviation from the 2% target, country by country. BR and IN running hot, CN in deflation, US at 0.6pp above target. Same date as every other chart on the dashboard.
Caravan Macro page deeper view in light mode. Section overline CENTRAL BANKS, title Eight banks, eight tones. Description: needle points to stance, where each bank sits versus its assumed neutral rate. Eight gauge dials laid out in two rows show: FED 4.13 percent Hawkish -25bp, ECB 2.25 percent Neutral -25bp, BOE 4.25 percent Hawkish -25bp, BOJ 0.50 percent Dovish +25bp, PBOC 1.30 percent Dovish -10bp, BOC 2.75 percent Neutral -25bp, SNB 0.25 percent Neutral -25bp, RBA 3.85 percent Hawkish -25bp. Below: section GROWTH AND LABOR, title The Phillips quadrant, with a quadrant chart preview marked Overheating and Stagflation.
Eight central banks, eight gauges. The dial shows where each bank's policy rate sits today, the label below names the last move and which way it leaned. Hawkish, dovish or neutral, you read the global rate landscape in one row.

Numbers we wrote, not numbers we rolled

In most product demos, sample data means random fillers that say nothing about the design. We wrote the numbers in Caravan the way a journalist writes an article: every figure for 19 May 2026 holds with the next one. The VIX sits at 22.8 because the day is risk-off. Brent sits at 66 because China demand is soft. Gold sits at 3,210 because the dollar ran weak. The one-year sparkline next to Bitcoin closes exactly on the +18.59% YTD the KPI shows above it.

What you get out of this, as a reader, is that the design holds up against numbers that behave like real ones. You reload the page and the dashboard does not contradict itself. You compare a tile to the chart below it and the math lines up. You read Markets today and Outlook tomorrow and the same story carries through.

When we wire real data into a dashboard for a client, that's the standard we hold the work to.

Caravan Markets page in light mode. Page title Markets, lede on the defensive regime with dollar broadly weak across G10, gold bid on safe-haven flow, crude soft on China demand fears, equities offered into the trade-truce expiry. Section overline TODAY'S READ, title Cross-asset signals. Six KPI cards in a row with inline sparklines: SPX 5,920 +7.28 percent, US10Y 4.470 +5.72 percent, DXY 99.40 +3.52 percent in red, Gold 3,210 -0.98 percent in red, Brent 66.10 +1.19 percent, BTC 103,400 +18.59 percent. Section PERFORMANCE, title YTD ranking, all tradables begins below with the first horizontal bars visible: SILVER, DAX, HSI.
Six tiles, one per asset class. On each tile: label, current value, year-to-date variation, and a 60-day sparkline. Equity, rates, FX, commodities, crypto, all readable at once. The sparklines on the tiles match the bars in the YTD ranking below: same numbers, two reads.
Caravan Markets page deeper view in light mode. Full YTD ranking horizontal bar chart with more than 40 tradables sorted from best to worst across equity, commodity and crypto. Top of frame: SILVER +19.0 percent, DAX +15.2 percent, HSI +11.0 percent, BTC +9.8 percent, IBOV +9.8 percent, GOLD +8.4 percent, XRP +7.3 percent, COPPER +5.7 percent, CAC +5.4 percent, WHEAT +2.6 percent, SENSEX +2.3 percent, FTSE +1.8 percent, SHCOMP +1.2 percent. Crossover to negatives: SPX -2.2 percent, NDX -2.7 percent, NKY -3.5 percent, NATGAS -3.0 percent, RTY -8.3 percent, BNB -8.5 percent, BRENT -9.7 percent, WTI -11.5 percent, ETH -13.5 percent, SOL -13.8 percent, ADA -25.0 percent, AVAX -30.8 percent, DOGE -41.0 percent. Legend at the bottom: Equity, Commodity, Crypto. Next section AT A GLANCE, title Cross-asset matrix begins below.
YTD ranking across equity, commodities and crypto in one chart. Forty-plus tickers, coloured by sign, sorted best to worst. Silver opens the leaderboard, Dogecoin closes it. You read who's winning, who's losing and by how much without changing page.

One colour system, two themes that both look right

Charts are the place a finance dashboard falls apart fastest. One chart that's slightly off-tone, and the serious feel is gone. We skipped the shortcut of an off-the-shelf chart library with a preset palette. We designed seven chart types from scratch (lines, areas, bars, sparklines, donuts, heatmaps, gauges) and connected all of them to a single colour system from our design system.

The choice shows up the moment a user flips between dark and light mode. Greens stay confident on black, reds stay legible on white, the dividers between sections stay quiet. Both themes were designed at the same time, on the same surface. There's no patched-on dark mode that looks like an afterthought.

For a client this is the signal: when we say two themes, we mean both will read intentional.

Caravan Outlook page in light mode. Page title Outlook, lede on synthesis, where the data suggests capital should rotate, what themes are running, scenarios pricing into the curve. Section overline PERFORMANCE, title Asset class matrix. Heatmap shows five asset classes (Equity SPX, Rates US10Y, FX DXY, Commodity Gold, Crypto BTC) across four periods (1D, MTD, YTD, 1Y). Below, two side-by-side panels. Left WORKING: Top 8 YTD with green bars: 01 Silver +19.0 percent, 02 DAX +15.2 percent, 03 Hang Seng +11.0 percent, 04 Bitcoin +9.8 percent, 05 Bovespa +9.8 percent, 06 Gold +8.4 percent, 07 XRP +7.3 percent, 08 Copper +5.7 percent. Right NOT WORKING: Bottom 8 YTD with red bars: 01 Dogecoin -41.0 percent, 02 Avalanche -30.8 percent, 03 Cardano -25.0 percent, 04 Solana -13.8 percent, 05 Ethereum -13.5 percent, 06 WTI Crude -11.5 percent, 07 Brent Crude -9.7 percent, 08 BNB -8.5 percent.
The synthesis at a glance. The heatmap up top reads each asset class across one day, one month, year-to-date and one year, side by side, so a reader sees the regime change as the time window widens. Below, the two leaderboards: what is working YTD on the left, what is not on the right.

Terminal density, broadsheet typography

A Bloomberg terminal gives you eighty pieces of information on a single screen. A modern dashboard gives you twenty, with plenty of white space. We chose Bloomberg. Caravan is built for the desktop, full screen width, and the first glance carries six leading indicators, a 24-hour activity chart and the global markets summary table. A reader reaches a verdict on the day without scrolling.

On typography we stepped out of our studio default. Instead of our usual fonts we put IBM Plex Sans on the prose and IBM Plex Mono on the numbers. Plex Mono is a fixed-width face: three columns of prices line up one under the other, the way they do in an 80s financial broadsheet. It's a small choice that does most of the work of making Caravan feel trustworthy at a glance.

On mobile the layout collapses to one column. We did not fight that; the dashboard is a desktop product, and the phone version is the same content in a vertical scroll.

Caravan Events page in light mode. Page title Events, lede on geopolitics, central banks, tariffs, sanctions and what is moving capital allocation today and over the next quarter. Section overline GEOPOLITICS, title Active conflict hotspots. A dotted world map fills the frame, with subtle markers across Eastern Europe, the Middle East, Africa, South Asia and East Asia. Beneath the map the conflict list begins: Ukraine status CEASEFIRE TALKS, frontline static along Donetsk axis, talks resumed Doha 12 May. Israel–Iran status ESCALATING, direct strikes resumed 10 May after 6-month pause.
The geopolitics surface. A dotted world map with subtle markers on active hotspots; underneath, the conflict list with status badges (Ceasefire talks, Escalating, Active, Frozen) and one-line context next to coordinates.
Caravan Events page deeper view in light mode. Full active conflict list with status badges next to each name: Ukraine CEASEFIRE TALKS, Israel–Iran ESCALATING, Gaza ACTIVE, Yemen civil ACTIVE, Sudan ESCALATING, Haiti ESCALATING. Each row shows latitude and longitude and a one-line context note: sustained urban operations in Gaza, ceasefire mediation stalled. Houthi consolidation north, humanitarian collapse persists. RSF closing on El Fasher, famine risk in Darfur corridor. Gang coalition controls 80 percent of Port-au-Prince. Secondary list: Lebanon ACTIVE Red Sea shipping, Sahel (Mali/BF) ACTIVE Niger, Ethiopia ESCALATING DRC east, Taiwan Strait ESCALATING Myanmar, Mexico cartels ACTIVE Syria, Cabo Delgado ACTIVE Nigeria-BH, Korean DMZ ACTIVE Kashmir, Essequibo ACTIVE Colombia-ELN. Section CENTRAL BANKS, title Upcoming rate decisions begins below.
Fourteen active hotspots, sorted by intensity. On each row: the name, a status badge in the right tone (red for escalating, amber for active, neutral for frozen), coordinates and a one-line context. The world map above pulls from the same data.
Caravan Outlook page deeper view in light mode. Section title What's running. Four theme cards in a two-by-two grid: COMPUTE AI capex, hyperscaler capex run-rate above 290B annualized after Blackwell ramps, GPU supply tight but easing, cloud margins inflecting, +34 percent YoY. DECARBONIZATION Energy transition, EU CBAM enforcement begins Q3 2026, US clean-energy credits intact post-tariff regime, China BEV growth slowing to mid-teens, 6 sectors. SECURITY Defense, EU rearmament cycle accelerates after Bundestag election, US base spending +6 percent YoY, European defense ETFs +18 percent YTD, +18 percent. INDUSTRIAL POLICY Reshoring, Liberation Day tariffs accelerate friendshoring to Mexico, India, Vietnam, US advanced-manufacturing capex +14 percent YoY, +14 percent. Below: PRICING IN section, title Scenarios for next two quarters. Tri-band probability selector with Soft landing 45 percent, Inflation re-acceleration 30 percent, Geopolitical shock 25 percent. Three scenario cards detail first-order asset impacts: Soft landing inflation glides to 2 percent by Q4 with US equities and IG credit tighter, USD gradual weakness. Inflation re-acceleration tariff pass-through. Geopolitical shock Taiwan strait or Iran escalation. Disclaimer band at the bottom noting that Caravan is a research-grounded design demo with mock data, not investment advice.
The outlook page closes the dashboard. Four structural themes (AI capex, energy transition, defense, reshoring), each with a number that tells you why the theme matters now. Below, three scenarios for the next two quarters with their first-order impact on assets, colour-coded by direction. The bottom band is the honest line: research-grounded mock data, not investment advice.

Stack

  • Next.js16
  • React19
  • TypeScript5
  • TanStack Query5

Want a dashboard like this on a real product?

Caravan is what we built for ourselves, to show how we approach data design when there is no brief from outside. For a project with live feeds and real users, we run the same playbook with real data wired in. Let's talk.

Start a project