← All projects

Independent product & research

Situation Monitor

I built a dashboard that organizes financial news, economic events and market information so they can be reviewed together.

Independent Product & Research Project · 2025 - Present

Open Situation Monitor

Why I built it

Financial news and economic releases arrive from different sources and at different times. I wanted a place to organize that information, trace it back to its source and review what was known before or after an event.

What I implemented

  • Source collection and API integrations for news, macroeconomic information and market data.
  • Structured extraction and validation to turn incoming information into records the system can compare and inspect.
  • A SvelteKit dashboard backed by Cloudflare Workers and D1 event history.
  • Historical lookups that distinguish when information was published from when the system actually received and saved it.

What the system does

Situation Monitor is the public interface of Market Context Engine. Incoming news and event information is organized into source-linked context. Historical inspection lets me ask what information was available at an earlier moment without silently adding later updates.

What I can demonstrate

The public dashboard is available to explore. Documented checks cover saved event history surviving a restart or redeployment, consistent historical selection and read-only inspection. These checks make the product useful as both a market-context tool and a data-engineering project.

System overview

How different sources become market context.

Situation Monitor organizes different kinds of information before presenting them together. These categories describe the project’s coverage model; availability varies by provider.

Macro calendar

Economic releases, expectations and scheduled events.

Official releases

Central bank, government and regulatory information.

Financial news

Stories and narratives with their source identity.

Market data

Prices, volatility and broader market context.

Crypto markets

Crypto prices and exchange-related market information.

Geopolitical context

Regional developments that can affect markets.

Public architecture / Inputs to contextMany inputs. One structured view of what was known.
  1. 01Source inputs

    Bring different categories into one processing path.

  2. 02Parse & validate

    Normalize records and check source and event identities.

  3. 03Persistence

    Save structured event history with Workers and D1.

  4. 04Temporal controls

    Keep later information out of earlier historical views.

  5. 05Dashboard / API

    Present source-linked context for review and research.

Tools used

SvelteKit and TypeScript present the dashboard. Cloudflare Workers handle provider requests, D1 stores trusted event history, and Python supports research and validation workflows.

TypeScriptPythonSvelteKitCloudflare WorkersD1

Engineering details

Open a topic for the implementation decisions and checks behind the overview.

Turning incoming information into useful records

Collection, structured extraction and validation are separate stages. Records retain source identity, while checks handle incomplete fields, duplicate information and inconsistent event identities. Missing or stale source coverage stays visible.

Keeping historical views consistent

Source publication, first receipt and durable availability are different timestamps. An as-of query uses availability evidence so a late discovery cannot appear in a snapshot from before the system received it.

The documented checks include delayed commits, restart persistence, immutable snapshots and historical boundaries. Pre-event expectations are frozen separately from later results and revisions.

Current scope

Coverage depends on source availability. Some market interpretation uses rules and uncalibrated weights, so it should be read as context rather than a forecast. Historical dataset and test-suite totals are omitted until their dated scope can be established.

Open Situation Monitor Back to projects