Ecosystem Climate Capital /Technical Documentation

Engineering

System Architecture

End-to-end topology of the Nordic Climate Finance Hub (NCF Hub) Investor Platform — the web app, mobile app, and cloud backend that power deal flow, due diligence, matchmaking, and intelligence for the Nordic climate-finance community.

Logical view

The NCF Hub Investor Platform is a modular cloud application served to two first-party clients (web and mobile) and a curated set of partner integrations. All clients talk to the same domain services through a single secured API gateway. The platform is multi-tenant, audit-first, and designed to meet investor-grade due diligence and compliance requirements.

End-to-end topology (Mobile · Web · Cloud)

┌──────────────────────────┐   ┌──────────────────────────┐   ┌──────────────────────────┐
│   Web App                │   │   Mobile App             │   │   Partner / Public APIs  │
│   hub.ncfsummit.org      │   │   iOS · Android (Expo)   │   │   REST + HMAC · Webhooks │
│   TanStack Start · React │   │   React Native · Offline │   │   Registries · CRMs · ESG│
└────────────┬─────────────┘   └────────────┬─────────────┘   └────────────┬─────────────┘
             │                              │                              │
             │           HTTPS / TLS 1.3 · OIDC · mTLS for partners        │
             └──────────────┬───────────────┴──────────────┬───────────────┘
                            ▼                              ▼
                ┌────────────────────────────────────────────────────┐
                │            Edge / API Gateway (Cloud)              │
                │  AuthN (Supabase OIDC · SSO) · AuthZ (RBAC + RLS)  │
                │  Rate limiting · WAF · Request signing · Audit log │
                └────────────┬───────────────────────────────────────┘
                             │
   ┌──────────────┬──────────┼──────────────┬──────────────┬──────────────┬──────────────┐
   ▼              ▼          ▼              ▼              ▼              ▼              ▼
Investor      Deal &       Matchup     Leaderboard    Masterclass    News &        Concierge &
Directory     Co-Fund      Engine      Service        & Events       Intelligence  Summits
Service       Campaigns    (AI match)  (rankings)     Service        Service       Service
   │              │            │            │              │              │              │
   └──────────────┴────────────┴──────┬─────┴──────────────┴──────────────┴──────────────┘
                                      ▼
              ┌─────────────────────────────────────────────────┐
              │             Shared Platform Services            │
              │  Identity · Notifications · Search · Files      │
              │  Audit log · Feature flags · Billing · Analytics│
              └────────────┬────────────────────────────────────┘
                           ▼
   ┌────────────────────┬─────────────────────┬─────────────────────┬────────────────────┐
   ▼                    ▼                     ▼                     ▼                    ▼
Postgres            Object Storage       OpenSearch            Queue / Jobs         AI Gateway
(primary,           (S3 · documents,     (full-text,           (SQS / Redis ·       (LLM matching,
 RLS + audit)        data rooms, KYC)     filters, geo)         workers, cron)       enrichment)

Web App (hub.ncfsummit.org/investor)

The investor workspace. Optimised for dense data and multi-step due-diligence flows.

┌──────────────────────────────────────────────────────────────┐
│                       Web App (Browser)                      │
├──────────────────────────────────────────────────────────────┤
│  UI Layer                                                    │
│   ├─ TanStack Start (SSR) · React 19 · TypeScript            │
│   ├─ Tailwind v4 design system · shadcn/ui                   │
│   └─ TanStack Router · TanStack Query (cache + suspense)     │
│                                                              │
│  Feature surfaces                                            │
│   ├─ Investor Directory · Deal & Co-Fund Campaigns           │
│   ├─ Matchup Engine · Leaderboard · Masterclass Library      │
│   ├─ Satellite Events · News & Intelligence · Concierge      │
│   └─ Document rooms · IC memos · Watchlists · Pipeline       │
│                                                              │
│  Cross-cutting                                               │
│   ├─ OIDC session (Supabase) · SSO · MFA                     │
│   ├─ Command palette (⌘K) · keyboard-first                   │
│   └─ Telemetry · error capture · feature flags               │
└─────────────────────────┬────────────────────────────────────┘
                          │  HTTPS · server functions · REST
                          ▼
                  Cloud API Gateway

Mobile App (iOS · Android)

Companion app for delegates and investors on the move — concierge scheduling, deal review, matchmaking, and on-site summit operations. Offline-first for low-connectivity venues.

┌──────────────────────────────────────────────────────────────┐
│                  Mobile App (iOS / Android)                  │
├──────────────────────────────────────────────────────────────┤
│  Shell                                                       │
│   ├─ React Native · Expo SDK · TypeScript                    │
│   ├─ Expo Router · TanStack Query (persisted)                │
│   └─ SQLite (op-sqlite, SQLCipher) · Secure Enclave/Keystore │
│                                                              │
│  Delegate & investor features                                │
│   ├─ Concierge: 1:1s, firechats, partner intros, calendar    │
│   ├─ Matchup inbox · accept / decline · QR check-in          │
│   ├─ Deal pipeline read + light actions (watch, NDA, signal) │
│   ├─ Masterclass playback · offline lessons · certificates   │
│   └─ News feed · push alerts · saved briefings               │
│                                                              │
│  Platform services                                           │
│   ├─ Biometric unlock · auto-lock · remote wipe              │
│   ├─ Offline outbox · idempotent sync · conflict resolution  │
│   ├─ Push (APNs / FCM) · deep links to web app               │
│   └─ OTA updates via EAS Update                              │
└─────────────────────────┬────────────────────────────────────┘
                          │  HTTPS · OIDC · sync API
                          ▼
                  Cloud API Gateway

Cloud App (Backend Platform)

The system of record. Domain services are deployed independently behind a single gateway, share platform services (identity, audit, search, files), and persist to Postgres with row-level security plus an append-only audit log.

┌──────────────────────────────────────────────────────────────────────┐
│                          Cloud Platform                              │
├──────────────────────────────────────────────────────────────────────┤
│  Edge / Gateway                                                      │
│   ├─ TanStack Start on Cloudflare Workers (SSR + server fns)         │
│   ├─ AuthN: Supabase OIDC · SSO (SAML/OIDC) · MFA                    │
│   ├─ AuthZ: RBAC (Admin · Investor · Analyst · Sponsor · Viewer)     │
│   ├─ Tenant scoping · per-route rate limits · WAF · bot mgmt         │
│   └─ Request signing for partner APIs · webhook HMAC verification    │
│                                                                      │
│  Domain services                                                     │
│   ├─ Investor Directory       — profiles, mandates, deal history     │
│   ├─ Deal & Co-Fund Campaigns — pipeline, syndicates, data rooms     │
│   ├─ Matchup Engine           — AI scoring, double opt-in intros     │
│   ├─ Leaderboard              — daily rankings, methodology page     │
│   ├─ Masterclass & Library    — video, knowledge checks, certs       │
│   ├─ Satellite Events         — agendas, RSVPs, ticketing, hosts     │
│   ├─ News & Intelligence      — newsroom, briefings, tagging         │
│   └─ Concierge & Summits      — scheduling, firechats, check-in      │
│                                                                      │
│  Shared platform services                                            │
│   ├─ Identity & org graph · Notifications (email/push/in-app)        │
│   ├─ Search (OpenSearch) · Files & data rooms (S3, watermarking)     │
│   ├─ Audit log (append-only, hash-chained) · Feature flags           │
│   ├─ Billing & entitlements · Analytics & reporting                  │
│   └─ AI Gateway (LLM matching, enrichment, summarisation)            │
│                                                                      │
│  Data plane                                                          │
│   ├─ Postgres 16 — RLS, logical replication to analytics             │
│   ├─ Object storage (S3) — documents, KYC, exports                   │
│   ├─ OpenSearch — full-text, faceted, geo queries                    │
│   ├─ Queue/Workers — SQS + Redis, scheduled jobs, ETL                │
│   └─ Data warehouse — anonymised snapshots for BI & leaderboard      │
│                                                                      │
│  Integrations                                                        │
│   ├─ KYC/AML providers · sanctions screening                         │
│   ├─ DocuSign / e-signature · payment rails (Stripe)                 │
│   ├─ Calendar (Google/Microsoft) · video (Zoom/Meet)                 │
│   ├─ CRM (HubSpot/Salesforce) · ESG & climate data feeds             │
│   └─ Summit ticketing & badge printing                               │
└──────────────────────────────────────────────────────────────────────┘

Runtime

  • Edge / SSR: TanStack Start on Cloudflare Workers.
  • Domain services: Node.js (TypeScript) workers deployed as isolated functions or containers.
  • Database: Postgres 16 (Supabase) with row-level security and logical replication.
  • Object storage: S3-compatible bucket for documents, data rooms, exports.
  • Search: OpenSearch for full-text, faceted, and geo queries across deals, investors, news.
  • Background jobs: Queue-backed workers for matching, leaderboard refresh, notifications, ETL.
  • AI: Claude AI and Codex for matching, enrichment, summarisation, and intelligence briefings.
  • Mobile: React Native via Expo, distributed through TestFlight and Google Play with EAS Update.

Environments

EnvPurposeData
localDeveloper machineSeeded fixtures
previewPR previewsAnonymised snapshot
stagingPre-prod & UATAnonymised snapshot
productionLive customersCustomer data

Cross-cutting concerns

  • AuthN: OIDC via Supabase with SSO (SAML / OIDC) and MFA for enterprise tenants.
  • AuthZ: Role-based access control (Admin, Investor, Analyst, Sponsor, Project Owner, Viewer) with tenant scoping and Postgres RLS.
  • Audit: Append-only, hash-chained event log for every state-changing action; exported nightly to cold storage.
  • Privacy: Double opt-in for introductions; consent logged; GDPR data-subject workflows.
  • Observability: Structured logs, OpenTelemetry traces, RED metrics dashboards, SLO alerting.
  • Compliance: SOC 2 Type II controls, GDPR, KYC/AML for investor onboarding, ESG disclosure alignment.

Reference data flow: a deal introduction

  1. A sponsor publishes a deal in the Deal & Co-Fund Campaigns service; documents land in a watermarked data room.
  2. The Matchup Engine scores the deal against investor mandates in the Investor Directory using the AI Gateway.
  3. Top matches are notified via the web and mobile apps; both sides confirm a double opt-in introduction.
  4. On opt-in, a secure intro thread, NDA flow, and document-room access are provisioned; every action is hash-stamped to the audit log.
  5. The transaction is reflected in the Leaderboard and surfaced by News & Intelligence once verified.
  6. Follow-up meetings are booked through the Concierge for the next NCF Summit or satellite event.